【问题标题】:how do I eliminate linker error mingw32/bin/ld.exe: cannot find -lSDL如何消除链接器错误 mingw32/bin/ld.exe: 找不到 -lSDL
【发布时间】:2017-06-04 22:49:36
【问题描述】:

我正在尝试构建 SDL 以与 Eclipse 一起使用。我正在尝试删除此链接器错误:

开始编译

21:15:53 **** Incremental Build of configuration Debug for project CMD ****
Info: Internal Builder is used for build
g++ "-IC:\\MinGW\\include\\SDL2" -O0 -g3 -Wall -c -fmessage-length=0 -o "src\\CMD.o" "..\\src\\CMD.cpp" 
g++ -o CMD.exe "src\\CMD.o" -lmingw32 -lSDL -lSDL2main -lSDL2 

错误:

c:/mingw/bin/../lib/gcc/mingw32/5.3.0/../../../../mingw32/bin/ld.exe:找不到-lSDL collect2.exe:错误:ld 返回 1 退出状态 21:15:54 构建完成(耗时 1s.36ms)

most pertinent SO archive source I researched 似乎对我的问题没有可操作的答案,尽管它有完全相同的问题/错误: 标题 - 产生相同的错误消息:

c:/mingw/bin/../lib/gcc/mingw32/4.7.0/../../../../mingw32/bin/ld.exe:找不到-lSDL。

如果您点击作者的“解决方案”来解决与我相同的错误,我不清楚他是如何解决的。

有什么帮助吗?

【问题讨论】:

  • 您的libSDL2.a 和/或libSDL2.dll.a 在哪里?您传递了标头的路径(带有-I 编译器标志),但没有传递到库目录的路径(在链接阶段-L 标志)。
  • libSDL2.a 和 libSDL2.dll.a 都在 c:/MinGW/lib 中找到
  • 好吧,我不小心阅读不好,你到底为什么链接SDLSDL2?它们不兼容。
  • 你搞定了:我有几个错误,通过使用以下补丁解决了它们,只留下了我们正在处理的错误:选择项目项目>属性 C/C++ 构建>设置工具设置>GCC C 编译器包含路径 (l)>"/usr/include/SDL" C/C++ Build>Settings Tool Settings>GCC C Linker Libraries (l)>"SDL" Apply ...然后构建项目并运行...但现在我明白了我使用的是 SDL 而不是 SDL2。我是否应该重新安装 SDL2 并使其兼容,然后查看项目是否会链接?
  • 再一次,您不能在一个二进制文件中同时使用 SDL 和 SDL2。

标签: c++ eclipse gcc linker sdl


【解决方案1】:

问题解决了,SDL2 很棒。好的:

c:/mingw/bin/../lib/gcc/mingw32/4.7.0/../../../../mingw32/bin/ld.exe:找不到-lSDL。

重新安装 SDL2 避免 SDL 文件和 SDL2 文件之间的二进制冲突 正如 keltar 提到的那样,解决了眼前的问题,并且没有错误地构建问题!修复大括号中的内容暴露了新问题:崩溃。我将程序剥离得非常简单,并得出结论,崩溃不在代码范围内,因为即使没有代码,它也会发生。

要解决新问题,需要转到 SDL2 分发文件(复制到 MinGW 的那个)并从中复制 SDL2.dll [DLL from distributable][1]--- 通过将文件拖到您的调试和/或释放 .exe 文件所在的文件夹。(.exe + dll -> 对吗?)moving dll to exes。构建/运行程序 它应该工作! 您应该会看到一条欢迎消息! https://www.caveofprogramming.com/c-for-complete-beginners/setting-up-sdl-windows.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-25
    • 2011-07-12
    • 1970-01-01
    • 2018-05-04
    • 1970-01-01
    • 2018-02-06
    • 1970-01-01
    相关资源
    最近更新 更多