我的 Eclipse CDT 工作区中有项目project1
,它在我的系统上生成了我不想要的动态库。然后我有project2
这是一个autotools C项目,需要project1
生成的库。
当不是autotools项目时,在项目属性中添加动态库非常容易。但是对于autotools项目,我以前习惯使用的可能性不可用。
我在哪里可以告诉它在工作区中找到和使用库的位置(当然不是系统中的库)?
答案 0 :(得分:0)
以下脚本可以为链接器定位一些环境变量:
export MYINSTALL=$HOME/somepath
export LD_LIBRARY_PATH=$MYINSTALL/lib
export PKG_CONFIG_PATH=$MYINSTALL/lib/pkgconfig/:$MYINSTALL/share/pkgconfig/
export PATH=$MYINSTALL/bin:$PATH
export ACLOCAL_PATH=$MYINSTALL/share/aclocal
export ACLOCAL="aclocal -I $ACLOCAL_PATH"
mkdir -p $ACLOCAL_PATH
脚本 myinstallenv
以下两个项目都是使用调试符号构建的。 project1
是C / C ++,project2
仅为C。
project1
使用--prefix = $ MYINSTALL
myinstallenv && CFLAGS="-g -debug -g3 -O0" CXXFLAGS=$CFLAGS ./Configure shared linux-elf -Wa,--noexecstack --prefix=$MYINSTALL
project2
:
myinstallenv && CFLAGS="-g -g3 -O0" ./configure --prefix=$MYINSTALL
对于project2
,只有当您希望它安装在系统中而不是系统中时,才需要--prefix=$MYINSTALL
。严格说话,只需要myinstallenv && ./configure
。