Я создаю проект в C++ с помощью инструментария FLTK и включил библиотеки boost для сериализации и хотел бы статически ссылаться на них, поскольку я не могу гарантировать существование библиотек повышения на других машинах.
Я перезапустил команды установки из загрузки загрузки так:
sudo ./b2 link=static
sudo ./b2 install link=static
и я тогда компилирую свой проект так
g++ 'fltk-config --use-forms --use-gl --use-images --ldflags --cxxflags' xxxx.cpp -L/opt/local/lib/ -Wl, -Bstatic -lboost_iostreams -lboost_serialization -Wl, -Bdynamic -o program_name
но получить отказ, и только это как результат
ld: file not found:
collect2: ld returned 1 exit status
Я не совсем уверен, что делать здесь, есть ли у кого-нибудь указания?
У вас есть место в -Wl, -Bstatic
. Удалите это пространство, например -Wl,-Bstatic
.
То же самое относится к -Wl, -Bdynamic
.
fltk-config --use-forms --use-gl --use-images --ldflags --cxxflags
xxxx.cpp fltk-config --ldflags
-L / opt / local / lib / -Wl, -Bstatic -lboost_iostreams -lboost_serialization -Wl, -Bdynamic -o имя_программы ", но это по-прежнему возвращает следующую ошибку: ld: неизвестный параметр: -Bstatic collect2: error: ld вернул 1 состояние выхода