Articles of 依赖关系

Makefile不重build依赖关系?

公平的警告:我是使用makefiles的新手,所以这可能是明显的。 我试图做的是使用make来运行第三方代码生成工具,当且仅当该生成工具的源文件(称为他们.abc文件)更改。 我参考了http://www.cmcrossroads.com/ask-mr-make/6795-rebuilding-when-a-files-checksum-changes上的示例,其中显示了如何构buildMD5,我稍微调整了一下这个想法: 文件:abc.mk target = all files := $(wildcard Abc/*.abc) bltfiles := $files $(addsuffix .built,$files) all: $bltfiles %.built: %.abc %.abc.md5 @echo "Building $*" @ #Command that generates code from a .abc file @touch $@ %.md5: FORCE @echo "Checking $* for changes…" @ #Command to update the .md5 file, if the sum of the .abc […]

ffmpeg与libsoxrparsing依赖关系

我想用libsoxr编译ffmpeg ,所以在调用./configure时候使用了–enable-libsoxr这个标志。 我已经安装了libsoxr ,并将头文件的位置添加到PATH 。 但是,当我尝试编译它,我得到一个错误: ERROR: libsoxr not found ,并在config.log说: fatal error: soxr.h: No such file or directory #include <soxr.h> 我认为./configure没有使用PATH或者其他的方法来指定ffmpeg依赖关系吗?

Linux应用程序 – 最小化依赖关系

我想尽量减less由共享库mysql ++引起的依赖关系。 我知道这听起来很奇怪, 但是我正在努力解决Slamd64(安装了32位兼容性)的平台限制,它在本地没有特定的库。 我处于由于依赖于其他应用程序而无法更改libmysqlclient的设置的情况。 说明使mysql ++库静态链接到它的依赖关系,这就是我正在做的事情。 不要试图将我的应用程序静态链接到mysql ++; 我仍然想dynamic链接到mysql ++。

Makefile中的dynamic目标

我试图创build一个每个src/子文件夹有一个目标的Makefile,以便它创build一个静态库。 我目前正在尝试这个: %.o: %.cpp $(CXX) $(CXXFLAGS) $(INCLUDE) -c -o $@ $< lib%.a: $(patsubst %.cpp, %.o, $(wildcard src/%/*.cpp)) $(AR) rcs $@ $^ 但是这不起作用,目标匹配工作,但依赖性跟踪不。 如果我只是将src/%/*.cpp单独保存到适当目录中的.cpp文件中,但是我尝试在string函数中使用它来将.cpp转换为.o , %不能再工作了。

用Lazarus编写的FreePascal GUI应用程序的依赖性是什么?

我知道用于Linux的FreePascal应用程序是静态链接的。 我想有一些低级的API需要。 这仅仅是GUI应用程序的GTK吗? 我假设一个命令行应用程序不会有相同的依赖关系。 我在哪里可以find一种方法来确定哪些LCL类需要哪些基础API? 编辑:维塔利想知道我的答案是什么。 用一个小的控制台应用程序:ldd确认这是一个静态链接的可执行文件。 strace更有趣。 仅用于控制台的应用程序未显示打开的文件。 我想这是完全自足的。 通过一个简单的GUI应用程序,ldd显示了一些dynamic链接,strace的输出显示了许多 “open”。 在我对此感到满意之前,还需要多一点研究。

我如何知道ldd如何解决依赖关系

对于由ldd标识的依赖项,我怎么知道它是使用二进制的RPATH还是环境的LD_LIBRARY_PATH?

问题与debian控制文件依赖关系

我正在创build一个依赖于另一个的包。 软件包1的版本号是8.5.2-xxxxxxxxxxxx。 我试图让包2依赖于8.5.2而忽略修订号。 它必须完全取决于8.5.2,但任何8.5.2版本都可以。 我所读的一切似乎表明,我可以只指定版本没有版本号,以取决于控制文件中的其他设置,但这是行不通的。 它总是说: dpkg:依赖关系问题阻止[product2]的configuration:[product2]依赖于[product1](= 8.5.2); 但是:系统上[product1]的版本是8.5.2-xxxxxxxxxxxx。 在这里我的依赖线在控制文件中 取决于:[product1](= 8.5.2) 任何人都知道这是可能的吗?

当运行start-script / w local nodemon / mocha / babel-node时,在Linux的Node上“Permission Denied”

我有我的新的Linux设置的问题 – 我已经安装nodemon作为本地依赖(不全球),我试图从我的package.json“开始”脚本执行它。 我收到此权限错误。 node本身很好,但只要我尝试使用babel-node或nodemon甚至mocha ,我就会遇到许可问题。 我的设置分为两个硬盘驱动器 – 节点安装在我的SSD(使用我的操作系统),我的项目(它是node_modules,我试图执行nodemon从我的存储硬盘上。 sh: 1: nodemon: Permission denied npm ERR! Linux 3.19.0-56-generic npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "start" npm ERR! node v5.9.0 npm ERR! npm v3.7.3 npm ERR! code ELIFECYCLE npm ERR! vyggo-easyrtc@1.0.0 start: `nodemon –exec node entry` npm ERR! Exit status 126 npm ERR! npm ERR! Failed at […]

如何处理共享库中的依赖项,unix

我创build了一个dynamic库(.so),它捆绑了我需要的存储后端的一些function。 实际上,它提供了一个已知的接口,并为memcached,mysql,sqlite等提供了后端。 现在我的问题是,我的共享库依赖于libmemcached,在libsqlite3,在libmysqlclient ..等,我不知道如何打包,因为客户端只需要sqlite将不需要安装libmemcached。 我一直在考虑把它分成不同的图书馆,但是好像我最终会得到20个左右的图书馆,我不喜欢这个想法。 任何替代?

Linux上的依赖和mongodb

不明白为什么在Ubuntu下,每次我尝试运行 ldd mongodb (v3.0.7),我得到这个: ./mongod: /lib/x86_64-linux-gnu/libssl.so.10: version `libssl.so.10' not found (required by ./mongod) ./mongod: /lib/x86_64-linux-gnu/libcrypto.so.10: version `libcrypto.so.10' not found (required by ./mongod) linux-vdso.so.1 => (0x00007ffeeb589000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f1d9175e000) libssl.so.10 => /lib/x86_64-linux-gnu/libssl.so.10 (0x00007f1d914ff000) libcrypto.so.10 => /lib/x86_64-linux-gnu/libcrypto.so.10 (0x00007f1d91124000) … ldd已经find了libcrypto和libssl,但仍然显示错误告诉我…它无法findlibcryto和libssl!