我正在尝试使用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...
Run Code Online (Sandbox Code Playgroud)
结果总是一样的:
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++");
Run Code Online (Sandbox Code Playgroud)
我无法在Google上找到答案.
什么是正确的SCons foo才能让它工作?
您需要创建一个环境并设置适当的变量:
env = Environment(
CPPPATH=['/home/dja/ocr/include'],
LIBPATH=['/home/dja/ocr/lib'],
LIBS=['iulib'])
env.Program('my_executable', Glob('*.c'))
Run Code Online (Sandbox Code Playgroud)
CPPPATH指向C预处理器路径列表(注意:3 P).LIBPATH指向库所在的位置.最后,LIBS是一个与您的程序链接的库列表.