修改 stack.xml 和manifest.xml 中的 export 标签是无效的, 具体可以看
这里,
...
<export>
<cpp cflags="-I../include" />
<cpp lflags="-L/usr/local/Aria/lib" />
</export>
...
这里,只是为package的使用者而定义的。 比如,
- 对于-I选项来说,可能是运行中需要在特定的目录下查找文件, 就可以通过这个来指定,不过,只是个人猜测
- 对于-L选项,就是程序运行的时候,设置动态链接库的查找路径, 和
效果是一样的,只是这个程序的调用者不需要额外指定(比如,在~/.bashrc 里面写出来)export LD_LIBRARY_PATH=$LD_LIBRARY_APTH:path
那么, 需要使用第三方库的话,直接修改package 对应的CMakeLists.txt 文件,使用标准的CMake宏
- 添加头文件搜索路径: INCLUDE_DIRECTORIES(/usr/include/)
- 添加库文件搜索路径: LINK_DIRECTORIES(/usr/lib/)
- 添加对库的链接: TARGET_LINK_LIBRARIES(target lib)