Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux eclipseide中的SDL配置_Linux_Eclipse_Opengl_Sdl - Fatal编程技术网

Linux eclipseide中的SDL配置

Linux eclipseide中的SDL配置,linux,eclipse,opengl,sdl,Linux,Eclipse,Opengl,Sdl,我正在尝试在Linux x86环境(ubuntu)中的Eclipse上运行OpenGL代码: 在命令行中输入 g++main.cpp error.cpp lesson45.cpp-o lesson45-L/usr/X11R6/lib/-lGL-lGLUsdl-config--cflags--libs 这是make文件中的指令。 现在我正试图在Eclipse上运行代码,我知道我必须设置链接器库GL和GLU以及链接器库目录/usr/X11R6/lib/。然而,关于sdlconfig--cflags-

我正在尝试在Linux x86环境(ubuntu)中的Eclipse上运行OpenGL代码: 在命令行中输入

g++main.cpp error.cpp lesson45.cpp-o lesson45-L/usr/X11R6/lib/-lGL-lGLU
sdl-config--cflags--libs

这是make文件中的指令。
现在我正试图在Eclipse上运行代码,我知道我必须设置链接器库GL和GLU以及链接器库目录/usr/X11R6/lib/。然而,关于
sdlconfig--cflags--libs
,我不知道如何在Eclipse中配置它

如果找不到更文明的配置Eclipse的方法,您可以始终从
sdl config
调用中提取此信息,并手动配置设置:

## Compiler flags
$ sdl-config  --cflags
-I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT

## Linker flags
$ sdl-config  --libs
-L/usr/lib/x86_64-linux-gnu -lSDL
< P>创建一个新的C++项目(文件> NeX>C++项目)。您需要选择一个工具链-Linux GCC

如果要使用C++11,请执行以下操作:

  • 在“包资源管理器”下的项目上单击鼠标右键,然后选择“属性”
  • Select(C/C++ Buffe>设置> GCC C++编译器>杂项)
  • 在“其他标志”下添加:-std=c++0x
  • 单击应用,然后单击确定
  • 将Eclipse配置为使用SDL2

  • 在“包资源管理器”下的项目上单击鼠标右键,然后选择“属性”
  • 选择(C/C++常规>路径和符号>库)
  • 单击“添加”并添加“SDL2”,然后单击“确定”
  • 单击“添加”并添加“SDL2main”,然后单击“确定”

  • 这一过程已经过测试并确认有效,尽管我不认为这有什么功劳。来源于

    的信息,我将尝试结合前面给出的建议提供一个更全面的答案。在Eclipse Mars版本为4.5.1的Fedora22系统上,这对我来说是有效的。正如@Zammald所建议的,有一些改动s、 首先

      < L>创建一个新的C++项目(<强>文件>新建> C++项目)
    • 您需要选择一个工具链-Linux GCC
    如果要使用C++11,请执行以下操作:
    • 右键单击“包资源管理器”下的项目,然后选择属性
    • 选择(<强> C/C++ +构建>设置> GCC C++编译器>方言< /强>
    • 在“语言标准”下选择:“ISO C++11(-std=C++0x)”。单击应用,然后单击确定
    将Eclipse配置为使用SDL2 在这一步中,我建议采用@espernato的方法,使用系统的终端/外壳来查找或验证系统上SDL2所需文件/库的存在/位置

    首先,如果您想找到系统上必要库的位置,在终端中执行以下命令将为您提供“include”位置和其他编译器/预处理器标志

    $ sdl2-config --cflags
    
    类似地,要列出库/链接器标志

    $ sdl2-config --libs
    
    例如,在我的Fedora22(64位)系统上,输出如下所示

    $ sdl2-config --cflags --libs
    -I/usr/include/SDL2 -D_REENTRANT
    -lSDL2 -lpthread
    
    您可以在一个单独的临时目录中测试编译,而不需要eclipse相关的项目文件(即仅源文件),如下所示:

    $ mkdir /tmp/testing
    $ cp -r main.cpp error.cpp lesson45.cpp /tmp/testing/.
    $ cd /tmp/testing
    $ g++ `sdl2-config --cflags --libs` -o lesson45 main.cpp error.cpp lesson45.cpp
    

    现在,要在Eclipse中使用SDL2库/路径,请从
    SDL2配置--libs
    输出中添加必要的库

    • 右键单击“包资源管理器”下的项目,然后选择属性
    • 选择(C/C++常规>路径和符号>库
    • 单击“添加”,键入
      SDL2
      ,然后单击确定
    • 单击“添加”并键入
      pthread
      ,然后单击确定
    sdl2 config--cflags
    输出中添加预处理器指令

    • 右键单击“包资源管理器”下的项目,然后选择属性
    • 选择(<强> */C++ +构建>设置> GCC C++编译器>预处理器)
    • 在“定义符号(-D)”下,单击“添加”图标
    • 键入可重入的
      ,然后单击确定