我正在尝试使用 SCons 编译一个程序,该程序需要一组我已安装在非标准位置的依赖项。
我已将依赖项安装在 /home/dja/ocr 中。现在我正在尝试编译主程序,但不知道如何告诉 SCons 在哪里查找库和标头。
我已经尝试过(除其他外):
scons prefix=/home/dja/ocr
scons includepath=/home/dja/ocr/include libpath=/home/dja/ocr/lib
env LIBPATH=/home/dja/ocr/lib INCLUDEPATH=/home/dja/ocr/include scons
...etc...
结果总是相同的:
scons: Reading SConscript files ...
Currently supported OS version: Ubuntu 10.04
Checking for C++ library iulib... no
AssertionError: :
File "/home/dja/ocr/src/ocropus/SConstruct", line 107:
assert conf.CheckLibWithHeader("iulib","iulib/iulib.h","C++");
我一直无法在谷歌上找到答案。
使其正常工作的正确 SCons foo 是什么?
您需要创建一个环境并设置适当的变量:
env = Environment(
CPPPATH=['/home/dja/ocr/include'],
LIBPATH=['/home/dja/ocr/lib'],
LIBS=['iulib'])
env.Program('my_executable', Glob('*.c'))
CPPPATH 指向 C 预处理器路径列表(注:3 P)。 LIBPATH 指向您的库所在的位置。最后,LIBS 是与您的程序链接的库列表。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)