Я пытаюсь выяснить, как установить некоторую переменную среды, которая заставит g++ ссылаться на правильные версии библиотек.
У меня есть некоторые старые библиотеки boost в /usr/lib 64 (ссылка на них не удалась) и новые библиотеки в /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
Несмотря на чтение многочисленных статей и сообщений по подобным темам, я пока не нашел решения.