Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/28.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
C++ 如何使用EclipseUbuntu设置SDL2_C++_Linux_Eclipse_Ubuntu_Sdl - Fatal编程技术网

C++ 如何使用EclipseUbuntu设置SDL2

C++ 如何使用EclipseUbuntu设置SDL2,c++,linux,eclipse,ubuntu,sdl,C++,Linux,Eclipse,Ubuntu,Sdl,我一直试图让SDL2在Ubuntu上与Eclipse一起工作 我试过跟随,但我就是不能让它工作 如何让SDL2与Eclipse一起工作并将所有内容正确地链接在一起 编辑: 每当我编译程序时,它都会回来说SDL.h丢失或没有这样的目录,尽管我可以在项目列表的includes中看到SDL 在编译时,我尝试使用: gcc SDLTest.cpp g++ SDLTest.cpp gcc -o test SDLTest.cpp `sdl-config --cflags --libs` 我不确定使用G

我一直试图让SDL2在Ubuntu上与Eclipse一起工作

我试过跟随,但我就是不能让它工作

如何让SDL2与Eclipse一起工作并将所有内容正确地链接在一起

编辑:
每当我编译程序时,它都会回来说SDL.h丢失或没有这样的目录,尽管我可以在项目列表的includes中看到SDL

在编译时,我尝试使用:

gcc SDLTest.cpp

g++ SDLTest.cpp

gcc -o test SDLTest.cpp `sdl-config --cflags --libs`
我不确定使用GCC和G++之间的区别,我从

我已将SDL include文件夹添加到项目中,但仍然没有添加任何内容

#包括
#包括
int main(int argc,char*argv[])
{
SDL_窗口*窗口;
SDL_Init(SDL_Init_视频);
window=SDL\u CreateWindow(
“SDL2窗口”,
20,
20,
640,
480,
SDL_窗口_OPENGL);
如果(窗口==NULL)
{
printf(“无法创建窗口:%s\n”,SDL_GetError());
返回1;
}
SDL_延迟(3000);
SDL_窗口(窗口);
SDL_退出();
返回0;
}
`

  • 这将安装构建使用SDL的程序所需的一切:
    sudo apt get install libsdl2 dev
  • 创建一个新的Eclipse项目
  • 转到项目的属性
  • C/C++构建
  • 背景
  • GCC C++链接器>库
  • 单击
    Add…
    并键入
    SDL2
  • 应用并重新索引项目

  • 我使用了文档。通过测试。

    您尝试的内容如何不起作用?Eclipse是否删除了您的主目录?导致内核死机?当我编译程序时,它会返回说SDL.h丢失或没有这样的目录,即使我可以在项目列表的includes中看到SDL。编译时,我尝试使用:
    gccsdltest.cpp
    我遵循了您所说的。我对“重新编制项目索引”有点不确定,我假设它是右键单击要编制索引的项目,然后使用“重建”、“刷新所有文件”或“使用修改过的文件更新”,我每次都这样做。然后我复制了那个测试代码,但我的SDL包含问题仍然没有解决。我不知道我错过了什么,因为它无法再次工作,谢谢。我再次按照步骤操作,但我仍然有相同的问题,我链接了另一个图像,显示我在哪里添加了
    SDL2
    ,以确保在安装apt时我位于正确的位置sdl的include应该位于/usr/include中,在/usr/include中搜索SDL2,执行此操作时,#include将位于我的/usr/include文件夹中,是一个名为SDL2的文件夹,其中包含SDL.h,以便位于正确的位置?但是当我使用
    #include
    时,编译器和Eclipse仍然看不到它。它位于正确的位置,尝试像这样包含它#include
    #include <SDL2/SDL.h>
    
    #include <stdio.h>
    
    int main(int argc, char* argv[])
    {
        SDL_Window *window;
    
        SDL_Init(SDL_INIT_VIDEO);
    
        window = SDL_CreateWindow(
                "an SDL2 Window",
                20,
                20,
                640,
                480,
                SDL_WINDOW_OPENGL);
        if (window == NULL)
        {
            printf("Could not create window: %s\n", SDL_GetError());
            return 1;
        }
    
        SDL_Delay(3000);
    
        SDL_DestroyWindow(window);
    
        SDL_Quit();
        return 0;
    }