我正在尝试使用Derelict3绑定为SDL2编写一个简单的hello世界。在链接过程中,我遇到了一些我从未见过的错误。
module main;
import derelict.sdl2.sdl;
pragma(lib, "DerelictSDL2");
pragma(lib, "DerelictUtil");
pragma(lib, "dl");
int main(string[] args)
{
DerelictSDL2.load();
return 0;
}命令行:
dmd src/main.d -debug -Iinclude -Isrc -Llib lSDL2 2
输出:
> lib/libDerelictSDL2.a(sdl_55_698.o):(.rodata+0x41e8): undefined reference to `_D6object6Object8opEqualsMFC6ObjectC6ObjectZb'
> lib/libDerelictUtil.a(exception_9b_6db.o):(.rodata+0xe8): undefined
> reference to `_D6object6Object8opEqualsMFC6ObjectC6ObjectZb'
> lib/libDerelictUtil.a(exception_9d_89d.o):(.rodata+0x178): undefined
> reference to `_D6object6Object8opEqualsMFC6ObjectC6ObjectZb'
> lib/libDerelictUtil.a(exception_9e_7a5.o):(.rodata+0x118): undefined
> reference to `_D6object6Object8opEqualsMFC6ObjectC6ObjectZb' collect2:
> ld returned 1 exit status
> --- errorlevel 1我尝试过的:
我使用的是DMD64 D编译器v2.063.2。任何帮助都是非常感谢的。谢谢。
发布于 2013-09-18 00:17:38
它似乎是使用不同版本的D构建的,而不是用于构建程序的版本。尝试从源头上重建弃置物。
https://stackoverflow.com/questions/18861641
复制相似问题