提问人:elanilero 提问时间:8/7/2022 更新时间:8/7/2022 访问量:793
未定义对“_setjmp”生成 SFML 的引用
undefined reference to `_setjmp' building SFML
问:
我正在为MinGW构建SFML,如官方教程中所述。我正在使用 WinLibs 的最新 MinGW,用于 64x 系统。我完全按照 GitHub 的 SFML 2.6 编写了教程,但是当我运行“mingw32-make”进行构建时,在“构建 CXX 对象...”列表之后,我收到以下两个错误:
h:/winlibs_64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/12.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/Users/jayok/Downloads/SFML-2.6.x/SFML-2.6.x/extlibs/libs-mingw/x64/libfreetype.a(sfnt.c.obj):sfnt.c:(.text+0x5614): undefined reference to `_setjmp'
h:/winlibs_64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/12.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/Users/jayok/Downloads/SFML-2.6.x/SFML-2.6.x/extlibs/libs-mingw/x64/libfreetype.a(smooth.c.obj):smooth.c:(.text+0x77a): undefined reference to `_setjmp'
collect2.exe: error: ld returned 1 exit status
mingw32-make[2]: *** [src\SFML\Graphics\CMakeFiles\sfml-graphics.dir\build.make:602: lib/sfml-graphics-2.dll] Error 1
mingw32-make[1]: *** [CMakeFiles\Makefile2:307: src/SFML/Graphics/CMakeFiles/sfml-graphics.dir/all] Error 2
mingw32-make: *** [makefile:155: all] Error 2
答: 暂无答案
评论
setjmp()
是 C 标准的一部分,但需要 .检查这些来源是否确实调用并使其不被某些人排除。编译器(更准确地说是链接器)命令不需要,但您可以尝试将其添加到makefile中。只是一些想法。#include <setjmp.h>
setjmp()
#ifdef
lc
LDFLAGS
sfnt.c
smooth.c
LDFLAGS
CFLAGS