在Fedora 19上链接到Eclipse CDT内部的SDL2的问题

时间:2013-08-31 20:17:08

标签: c++ eclipse linker sdl fedora

我很难将SDL2连接到Fedora 19 64bit上的Eclipse CDT Kepler内部的C ++应用程序。这是我做的:

  • 要安装SDL2,我运行了行sudo yum install SDL2-devel.i686
  • 使用复制粘贴代码创建一个新的.cpp文件,以便从here
  • 测试环境
  • 将SDL2库添加到GCC C ++链接器:Project Properties -> C/C++ Build -> Settings -> GCC C++ Linker -> Libraries -> Libraries (-l) -> add: libSDL2.so

然后,当我保存并构建程序时,我得到了一个错误的错误:

    Invoking: GCC C++ Linker
    g++  -o "SDL2 Test"  ./src/SDL2\ Test.o   -llibSDL2.so
    /usr/bin/ld: cannot find -llibSDL2.so
    collect2: error: ld returned 1 exit status
    make: *** [SDL2 Test] Error 1

然后我对SDL2进行了文件系统搜索,发现libSDL2.so存在于/usr/lib//lib/中。难道不应该是搜索图书馆的默认位置吗?我错过了什么?

(如果重要的话,在.cpp文件本身内没有错误,所有SDL命令都被识别,它只是链接器)

1 个答案:

答案 0 :(得分:0)

我找到了答案。我正在使用64位版本的Fedora,并尝试使用32位库。我认为因为我正在开发一个32位应用程序,所以我应该使用32位库。但是,当我取消绝缘32位并安装了64位库时,它才有效。

此外,Linux上的eclipse假定存在'lib'前缀和'.so'后缀,因此当您将它们添加到eclipse中的链接器(仅SDL2)时,您不需要它们。