DSO отсутствует в командной строке
Я пытаюсь скомпилировать программу на С++ следующим образом:
$ g++ -o Sniffer_Train main.cpp Sniffer_train.cpp Sniffer_train.h -lmysqlclient -lpcap
Однако я получаю следующую ошибку:
/usr/bin/ld: /tmp/cct6xeXD.o: undefined reference to symbol
'[email protected]@GLIBC_2.4' //lib/arm-linux-gnueabihf/libpthread.so.0:
error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
Я понятия не имею, что означает эта ошибка. Любая помощь будет принята с благодарностью.
Ответы
Ответ 1
DSO здесь означает Динамический общий объект; поскольку сообщение об ошибке говорит, что оно отсутствует в командной строке, я думаю, вы должны добавить его в командную строку.
То есть, попробуйте добавить -lpthread
в свою командную строку.
Ответ 2
Я также столкнулся с аналогичной проблемой, после урегулирования, библиотеки, которая должна быть подключена.
Но на самом деле вы, возможно, забыли подключить библиотеку.