我试图弄清楚如何设置一些环境变量,使 g++ 链接到正确版本的库。
我在 /usr/lib64 中有一些旧的 boost 库(链接这些库会失败),在 /v/users/regel/lib 中有一些新的库。所以链接器应该链接到新的库。
命令:
$ g++ test.cpp -lboost_system -L/v/users/regel/lib
正确链接程序。但是,我希望将其设置为链接器的 1 号搜索目录,这样我就不必在每次链接时都指定“-L”。
以下环境变量似乎不起作用:
$ LIBRARY_PATH=/v/users/regel/lib g++ test.cpp -lboost_system
/tmp/regel/cc4SmBtI.o: In function `main':
test.cpp:(.text+0x5): undefined reference to `boost::system::system_category()'
collect2: error: ld returned 1 exit status
和
$ LD_LIBRARY_PATH=/v/users/regel/lib:$LD_LIBRARY_PATH g++ test.cpp -lboost_system
/tmp/regel/ccUreBZy.o: In function `main':
test.cpp:(.text+0x5): undefined reference to `boost::system::system_category()'
collect2: error: ld returned 1 exit status
尽管阅读了许多类似主题的文章和帖子,但我还没有找到解决方案。