linux下QT編譯出現collect2:ld returned 1 exit status錯誤的原因之一是未安裝mesa
sudo apt install libgl1-mesa-dev
重啓qt
自己遇到的原因是:鏈接庫問題
在.pro文件裏:
# opencv
INCLUDEPATH += /usr/local/include \
/usr/local/include/opencv \
/usr/local/include/opencv2
LIBS += -L/usr/local/lib/libopencv_*.so
改成:
# opencv
INCLUDEPATH += /usr/local/include \
/usr/local/include/opencv \
/usr/local/include/opencv2
LIBS += -L /usr/local/lib/libopencv_*.so
就不報錯了。
注意:出現這個問題,qt提示得很模糊,可以嘗試不經過qtcreator編譯,直接到工程目錄中進行源碼編譯,會有更詳細的報錯提醒。
例:
mkdir build
cd build
qmake ../can_parse.pro
make
通過以上提示,知道是opencv庫未鏈接成功。