Qt编译中出现collect2.exe:-1: 错误:error: ld returned 1 exit status
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt编译中出现collect2.exe:-1: 错误:error: ld returned 1 exit status相关的知识,希望对你有一定的参考价值。
15:25:21: 为项目2012-3执行步骤 ...
15:25:21: 配置没有改变, 跳过 qmake 步骤。
15:25:21: 正在启动 "D:\Qt\Qt5.1.0\Tools\mingw48_32\bin\mingw32-make.exe"
D:/Qt/Qt5.1.0/Tools/mingw48_32/bin/mingw32-make -f Makefile.Debug
mingw32-make[1]: Entering directory 'D:/Qt/Qt5.1.0/Tools/QtCreator/bin/2012-text/build-2012-3-Desktop_Qt_5_1_0_MinGW_32bit-Debug'
g++ -Wl,-subsystem,windows -mthreads -o debug\2012-3.exe debug/main.o debug/mainwindow.o debug/moc_mainwindow.o -lglu32 -lopengl32 -lgdi32 -luser32 -lmingw32 -lqtmaind -LD:\Qt\Qt5.1.0\\5.1.0\mingw48_32\lib -lQt5Widgetsd -lQt5Guid -lQt5Cored
debug/mainwindow.o: In function `ZN15QTypedArrayDataItE10sharedNullEv':
D:\Qt\Qt5.1.0\Tools\QtCreator\bin\2012-text\build-2012-3-Desktop_Qt_5_1_0_MinGW_32bit-Debug/../2012-3/mainwindow.cpp:9: multiple definition of `square'
debug/main.o:D:\Qt\Qt5.1.0\Tools\QtCreator\bin\2012-text\build-2012-3-Desktop_Qt_5_1_0_MinGW_32bit-Debug/../2012-3/main.cpp:5: first defined here
debug/moc_mainwindow.o: In function `Z7qt_noopv':
D:\Qt\Qt5.1.0\Tools\QtCreator\bin\2012-text\build-2012-3-Desktop_Qt_5_1_0_MinGW_32bit-Debug/debug/moc_mainwindow.cpp:63: multiple definition of `square'
debug/main.o:D:\Qt\Qt5.1.0\Tools\QtCreator\bin\2012-text\build-2012-3-Desktop_Qt_5_1_0_MinGW_32bit-Debug/../2012-3/main.cpp:5: first defined here
collect2.exe: error: ld returned 1 exit status
Makefile.Debug:80: recipe for target 'debug\2012-3.exe' failed
mingw32-make[1]: *** [debug\2012-3.exe] Error 1
mingw32-make[1]: Leaving directory 'D:/Qt/Qt5.1.0/Tools/QtCreator/bin/2012-text/build-2012-3-Desktop_Qt_5_1_0_MinGW_32bit-Debug'
makefile:34: recipe for target 'debug' failed
mingw32-make: *** [debug] Error 2
15:25:22: 进程"D:\Qt\Qt5.1.0\Tools\mingw48_32\bin\mingw32-make.exe"退出,退出代码 2 。
Error while building/deploying project 2012-3 (kit: Desktop Qt 5.1.0 MinGW 32bit)
当执行步骤 'Make'时
15:25:22: Elapsed time: 00:01.
>> /main.cpp:5: first defined here
square重复定义了。查找所有square的地方,去掉重复定义。
QT 静态编译后中文可能会出现乱码
QT 静态编译后中文可能会出现乱码。
这是因为处理文字编码的 libqcncodecs 库是以 plugin 形式存放在 QT 静态编译目录/plugs/codecs/libqcncodecs.a 文件中。
文字乱码,需要加入入字体插件在 main.cpp 文件内:
#include <QtPlugin>
Q_IMPORT_PLUGIN(qcncodecs)
然后在工程 pro文件中加入库:
QTPLUGIN += qjpeg qcncodecs
或者
LIBS += QT 静态编译目录/plugs/codecs/plugins/codecs/libqcncodecs.a
注意,在动态编译时,要注释掉,否则编译不通过。
http://download.csdn.net/detail/csw5986/9540200
以上是关于Qt编译中出现collect2.exe:-1: 错误:error: ld returned 1 exit status的主要内容,如果未能解决你的问题,请参考以下文章