Вы должны сделать
g++ -o "rtb" ./src/rtb.o -lfcgi
В маловероятном случае, если /usr/local/lib/
равно , а не в вашем пути поиска, вы можете добавить этот путь в командной строке, например
g++ -L/usr/local/lib -o "rtb" ./src/rtb.o -lfcgi
или поместите его в переменную окружения LIBRARY_PATH
перед вызовом команды компиляции, например, с bash:
if [ -z "$LIBRARY_PATH" ];
then export LIBRARY_PATH=/usr/local/lib;
else export LIBRARY_PATH="$LIBRARY_PATH":/usr/local/lib;
fi
Если вы настаиваете на явном названии файла, пропустите -l
:
g++ -L/usr/local/lib -o "rtb" ./src/rtb.o /usr/local/lib/libfcgi.a
Однако я бы посоветовал против этого, потому что это негибко. Если проблема заключается в том, что установлена другая, несовместимая версия библиотеки, лучше убедиться, что правильная версия стоит первой в пути поиска (или, что еще лучше, убедиться, что неправильная версия вообще отсутствует в пути поиска). - может быть, даже удалив его из системы).