MinGW链接问题

3

我在使用MinGW时遇到了链接问题。以下是相关的调用:

g++ -enable-stdcall-fixup -Wl,-enable-auto-import
    -Wl,-enable-runtime-pseudo-reloc -mthreads -Wl -Wl,-subsystem,windows
    -o debug/Simulation.exe debug/LTNetSender.o debug/main.o debug/simulation.o
    debug/moc_simulation.o  -L'c:/Programmieren/Qt/4.5.2/lib' -lmingw32
    -lqtmaind -LC:\Programmieren\Qt\boost_1_39_0\distrib\lib
    -LC:\Programmieren\MinGW\lib -llibboost_system-mgw34-mt -llibws2_32
    -lQtSqld4 -lQtGuid4 -lQtNetworkd4 -lQtCored4

C:\Programmieren\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\
    ld.exe: cannot find -llibws2_32

MinGW库目录已包含在库路径中,libws2_32.a位于该目录中。为什么链接器没有找到该库?
2个回答

6
我认为链接器命令应该是-lws2_32。 "lib"和".a"会自动填写。

有趣的事情是:我需要libboost_system-mingw32-mt库。没有这个库,我会得到一个链接器错误。谢谢你的帮助。 - Tobias Langner
你在任何地方使用Boost吗? - Soo Wei Tan

1

你确定应该使用 -llibws2_32 吗?链接器会自动添加 lib.a

尝试改用 -lws2_32。我的版本的 ld 可以与它一起使用:

pax@daemonspawn> ld -llibm
ld: cannot find -llibm

pax@daemonspawn> ld -lm
ld: warning: cannot find entry symbol _start; not setting start address

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接