【问题标题】:Sublime Text building does not find SDL directorySublime Text 构建找不到 SDL 目录
【发布时间】:2012-12-08 22:21:53
【问题描述】:

试图将 Sublime 上的构建系统引导到我的 SDL 目录但不会编译

{
"cmd": ["g++", "${file}", "-o", "${file_path}/${file_base_name}", "-L/usr/include/SDL", "-lSDLmain", "-lSDL", "-lSDL_ttf", "-lSDL_image"],
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
"working_dir": "${file_path}",
"selector": "source.c, source.c++",

"variants":
[
    {
        "name": "Run",
        "cmd": ["bash", "-c", "g++ '${file}' -o '${file_path}/${file_base_name}' && '${file_path}/${file_base_name}'"]
    }
]
}

我对 SDL 的所有调用都返回了未定义的引用。似乎无法在命令上正确调用目录。

【问题讨论】:

    标签: build sdl sublimetext2


    【解决方案1】:

    您使用的链接器路径似乎不正确。在/usr/include/ 中只有头文件。

    所以我想你应该按以下方式修改它:

    -L<Where libraries are placed>
    

    例如在 Ubuntu 中:

    -L/usr/lib/x86_64-linux-gnu // 64 bit libraries
    -L/usr/lib/i386-linux-gnu   // 32 bit libraries
    

    为了让编译器新的头目录你应该使用-I标志:

    -I/usr/include
    

    【讨论】:

    • 这是 SDL 库的标准安装目录吗?将编译器引导到该目录会给我相同的未定义引用
    • @Pendertuga 不,这不是默认设置。这可能取决于您是如何在系统中安装它的。
    • 好吧,我将 -L 目录更改为 lib 文件所在的位置 /usr/lib/x86_64-linux-gnu 但现在我发现当我链接到该目录时找不到头文件。
    • @Pendertuga,要添加标题路径,您应该使用 -I 标志。
    猜你喜欢
    • 1970-01-01
    • 2015-08-04
    • 2016-09-05
    • 2015-02-16
    • 2012-10-18
    • 2021-03-20
    • 1970-01-01
    • 2020-10-07
    • 1970-01-01
    相关资源
    最近更新 更多