Gcc LD需要矮人版本3或2,但我的是版本4
关于如何在Qt(windows)上安装Gcc LD需要矮人版本3或2,但我的是版本4,gcc,qt5,ld,taglib,dwarf,Gcc,Qt5,Ld,Taglib,Dwarf,关于如何在Qt(windows)上安装id3lib,我研究了几个小时(并尝试了几个小时),但没有成功,我决定使用 我随后为Qt构建了一个兼容的taglib版本,但还有一个问题(): 在CMake中,我做了配置MinGW makefile 有人能告诉我怎么修吗 环境: Windows7(64位) CMake 2.8.12.1 TagLib 1.9.1 通用条款3.4.5 Qt 5.1.1 问题源于这样一个事实:您使用的是非常过时的GCC,而您的Qt二进制文件很可能是使用最先进的GCC(或与之相近
id3lib
,我研究了几个小时(并尝试了几个小时),但没有成功,我决定使用
我随后为Qt构建了一个兼容的taglib版本,但还有一个问题():
在CMake中,我做了配置MinGW makefile
有人能告诉我怎么修吗
环境:
- Windows7(64位)李>
- CMake 2.8.12.1李>
- TagLib 1.9.1李>
- 通用条款3.4.5李>
- Qt 5.1.1
问题源于这样一个事实:您使用的是非常过时的GCC,而您的Qt二进制文件很可能是使用最先进的GCC(或与之相近的GCC)构建的。例如,如错误消息所示,在您当前的GCC中,DWARF已经过时,并且与您当前的Qt使用的版本不兼容。此外,即使不会,您仍然会遇到二进制不兼容的其他问题,因为您基本上混合了具有不同主要版本号的编译器,这是非常不鼓励的。请注意,您的问题与CMake完全无关。您可以在错误消息中看到它,即,ld
报告了错误,这是(您过时的)GCC工具链中的链接器实用程序。总之,您唯一的选择是更新GCC,理想情况下是完全更新到用于构建当前Qt的GCC。问题源于您使用的是非常过时的GCC,而您的Qt二进制文件很可能是使用最先进的GCC(或与之相近的GCC)构建的。例如,如错误消息所示,在您当前的GCC中,DWARF已经过时,并且与您当前的Qt使用的版本不兼容。此外,即使不会,您仍然会遇到二进制不兼容的其他问题,因为您基本上混合了具有不同主要版本号的编译器,这是非常不鼓励的。请注意,您的问题与CMake完全无关。您可以在错误消息中看到它,即,ld
报告了错误,这是(您过时的)GCC工具链中的链接器实用程序。总之,您唯一的选择是更新GCC,理想情况下是完全更新到用于构建当前Qt的GCC。好的,我正在更新GCC。我将尝试重建。好的,我正在更新gcc。我将尝试重建。感谢您的澄清,您认为我可以将旧gcc版本的passs.c与新版本一起使用吗?(从gcc 4.9的源代码处编译,即,然后使用修改后的passs.c来控制阶段?)感谢澄清,您认为我可以将旧gcc版本的passs.c与新版本一起使用吗?(从源代码处编译gcc 4.9,即,然后使用修改后的passs.c来控制阶段?)
...
C:\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe: Dwarf
Error: found dwarf version '4', this reader only handles version 2 and 3
information.
C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../mingw32/lib/crt2.o:crt1.c:(.text+0x1f1):
undefined reference to `__chkstk_ms'
...