1

将我的工具链安装在与其供应商请求不同的目录中后,我一直在运行一些较小的问题,通过适当地设置 COMPILER_PATH、C_INCLUDE_PATH、CPLUS_INCLUDE_PATH 和 LIBRARY_PATH 变量可以轻松解决。

但是,有一个问题我似乎无法轻易回避:

beo-it@bsrv01:/tmp/async$ xscale-linux-g++ -fPIC -DBOOST_ASIO_DISABLE_EPOLL -I/var/lib/c++/boost/boost_1_48_0/target/arm-linux-4.4.2/include -oasync main.cpp -L/var/lib/c++/boost/boost_1_48_0/target/arm-linux-4.4.2/lib/static -pthread -lboost_system -lboost_thread
/var/toolchains/arm-linux/4.4.2/arm-linux-4.4.2/arm-linux/bin/ld: cannot find /usr/local/arm-linux-4.4.2/lib/be/libpthread.so.0
collect2: ld returned 1 exit status

我不确定为什么ld要通过绝对路径查找库,但这正是这里的情况。有什么办法可以规避这种行为并为其提供共享库的正确路径?

4

1 回答 1

0

我唯一能想到的是将符号链接放在它实际看起来的位置,但将其指向正确的文件。

于 2012-04-23T15:01:32.157 回答