我补充道
version.target = version.h
version.commands = bash generate-version.sh
QMAKE_EXTRA_TARGETS += version
PRE_TARGETDEPS += version.h
Run Code Online (Sandbox Code Playgroud)
到项目,但它尝试在目标目录中运行"generate-version.sh":
make: Leaving directory `.../qqq-build-desktop'
make: Entering directory `.../qqq-build-desktop'
Makefile:236: warning: overriding commands for target `version.h'
Makefile:233: warning: ignoring old commands for target `version.h'
bash generate-version.sh
bash: generate-version.sh: No such file or directory
make: Leaving directory `.../qqq-build-desktop'
Run Code Online (Sandbox Code Playgroud)
还有$$ DESTDIR,但我看不到$$ SRCDIR.如何在qmake中引用项目目录(或如何重写这个)?
客户端将mjpeg流发布为HTTP POST:
POST /feed/testfeed HTTP/1.0
Content-type: multipart/x-mixed-replace; boundary=--myboundary
--myboundary
Content-length: 14179
Content-type: image/jpeg
....JFIF....
....
Run Code Online (Sandbox Code Playgroud)
我看不到Django中的传入数据.request.read(6)
返回空字符串.我添加了假的"content-Length"标题:
POST /feed/testfeed HTTP/1.0
Content-Length: -1
Content-type: multipart/x-mixed-replace; boundary=--myboundary
...
Run Code Online (Sandbox Code Playgroud)
现在它以最大速度读取整个数据.request.read(6)
仅在我中断连接后才返回(包含整个数据,而不仅仅是预期的6个字节).
当我使用"PUT"请求而不是"POST"请求时,行为相同.
如何关闭POST请求的缓冲?
SO_PEERCRED是获取连接的AF_UNIX流套接字的pid/uid/gid的简单方法,SCM_CREDENTIALS或多或少相同,但更复杂(各种辅助消息).指向两种方式的示例链接.
我该怎么用?
$ printf 'int main(){}' | gcc -static -x c - -o hello
$ scp hello vi-server.org:./
hello 100% 565KB 565.2KB/s 00:00
$ ssh -t vi-server.org "./hello; uname -r"
FATAL: kernel too old
sh: line 1: 15378 Segmentation fault ./hello
2.6.18-274.... # can't easily upgrade the kernel
Connection to vi-server.org closed.
Run Code Online (Sandbox Code Playgroud)
如何构建可在旧系统上运行的静态二进制文件?我希望静态二进制文件在2.4上工作.
如果我这样做,例如:
(defmacro qqq [] '(toString [this] "Qqq"))
(reify Object (qqq))
Run Code Online (Sandbox Code Playgroud)
它失败是因为reify
看到(qqq)
而不是(toString [this] "Qqq")
.
在通常的解决办法是,包"具体化"与我自己的事情调用宏,但它更长,更具侵入性.
如何使我的宏更强大,通常的宏首先扩展?
期待像:
(defmacro ^{:priority 100500} qqq [] '(toString [this] "Qqq"))
(reify Object (qqq))
Run Code Online (Sandbox Code Playgroud)
要么
(defmacro qqq [] '(toString [this] "Qqq"))
(expand-first #{qqq} (reify Object (qqq)))
Run Code Online (Sandbox Code Playgroud) 有没有像seccomp这样的东西可以在 Windows 上运行?
它应该将所有系统调用限制为一些非常有限的集合,例如只读取和写入已打开的文件。
被描述为 Chromium 沙箱的那个看起来不像 Seccomp,因为它基于通常的文件权限和 Windows 安全对象,而不是限制对系统调用的访问。
(def evil-code (str "(" (slurp "/mnt/src/git/clj/clojure/src/clj/clojure/core.clj") ")" ))
(def r (read-string evil-code ))
Run Code Online (Sandbox Code Playgroud)
工作,但不安全
(def r (clojure.edn/read-string evil-code))
RuntimeException Map literal must contain an even number of forms clojure.lang.Util.runtimeException (Util.java:219)
Run Code Online (Sandbox Code Playgroud)
不起作用......
如何安全地阅读Clojure代码(将所有'#s本身作为自己的东西)保存到树中?想象一下,Clojure防病毒软件希望扫描代码中的威胁,并希望使用数据结构,而不是使用纯文本.
我希望我的程序能够使用zlib,lzma,lzo和bzip2压缩算法.
是否有适用于C的压缩库,可以简化多种算法(如libmcrypt支持多种加密模式和算法)?
期待这样的事情:
struct compressor c;
universal_compressor_init(&c, "lzma", 7 /* compression level */);
universal_compressor_compress(&c, inputbuf, inputsize, outputbuf, &outputsize);
universal_compressor_save_state(&c, statebuf, &statesize);
Run Code Online (Sandbox Code Playgroud)
注意:它不是关于zip/rar/7z/tar/cpio和其他存档格式,而是关于压缩原始缓冲区.考虑压缩网络协议或随机访问压缩块设备(如cloop).
我想将相同的数据分成两个"分支"进行单独处理,然后"加入"......
+----------+
+---------+ -->| doublber |--- +--------+
+--------+ | |-- +----------+ -->| | +------+
| source |-->| splitter| | summer |-->| sink |
+--------+ | |-- +----------+ -->| | +------+
+---------+ -->| delayer |--- +--------+
+----------+
Run Code Online (Sandbox Code Playgroud)
我该怎么做?
我的尝试:
import Data.Conduit
import Control.Monad.IO.Class
import qualified Data.Conduit.List as CL
-- import Data.Conduit.Internal (zipSources)
import Control.Arrow ((>>>))
source :: Source IO Int
source = do
x <- liftIO $ getLine
yield (read x)
source
splitter :: Conduit Int IO (Int, Int)
splitter = …
Run Code Online (Sandbox Code Playgroud)