Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/57.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++ 如何在Windows上为NetBeans和gcc添加库包含路径?_C++_C_Windows_Gcc_Netbeans - Fatal编程技术网

C++ 如何在Windows上为NetBeans和gcc添加库包含路径?

C++ 如何在Windows上为NetBeans和gcc添加库包含路径?,c++,c,windows,gcc,netbeans,C++,C,Windows,Gcc,Netbeans,如何在Windows上为NetBeans和gcc添加库包含路径 使用: NetBeans 7.1.2 MinGW(MinGW-get-inst-20120426.exe) gcc 4.7.0 例如,您希望将C:\Program Files(x86)\example\1.0\include\中的目录添加为包含路径 首先,设置代码帮助: NetBeans>工具>选项>C/C++>代码帮助 C编译器>包含目录: C:\程序文件(x86)\Example\1.0\include\shared C

如何在Windows上为NetBeans和gcc添加库包含路径

使用:

  • NetBeans 7.1.2
  • MinGW(
    MinGW-get-inst-20120426.exe
  • gcc 4.7.0

例如,您希望将
C:\Program Files(x86)\example\1.0\include\
中的目录添加为包含路径

首先,设置代码帮助:

  • NetBeans>工具>选项>C/C++>代码帮助
    • C编译器>包含目录:
      • C:\程序文件(x86)\Example\1.0\include\shared
      • C:\程序文件(x86)\Example\1.0\include\other
      • C:\程序文件(x86)\Example\1.0\include
      • C:\MinGW\lib\gcc\mingw32\4.7.0\include
      • C:\MinGW\include
      • C:\MinGW\lib\gcc\mingw32\4.7.0\include fixed
    • C++编译器>包含目录:
      • C:\程序文件(x86)\Example\1.0\include\shared
      • C:\程序文件(x86)\Example\1.0\include\other
      • C:\程序文件(x86)\Example\1.0\include
      • C:\MinGW\lib\gcc\mingw32\4.7.0\include\C++
      • C:\MinGW\lib\gcc\mingw32\4.7.0\include\C++\mingw32
      • C:\MinGW\lib\gcc\mingw32\4.7.0\include\C++\backward
      • C:\MinGW\lib\gcc\mingw32\4.7.0\include
      • C:\MinGW\include
      • C:\MinGW\lib\gcc\mingw32\4.7.0\include fixed
C:\MinGW\…
目录仅为示例。不要实际添加它们。NetBeans应该已经自动检测并添加了MinGW目录。如果没有,请尝试重置设置:

  • NetBeans>工具>选项>C/C++
    • 代码协助
      • C编译器>重置设置
      • C++编译器>重置设置
    • 构建工具
      • 恢复默认值

有关现有源的自动代码帮助的说明,请参阅:

  • C/C++项目快速入门教程:

  • 从现有代码创建项目时如何配置代码帮助:


现在,配置项目选项:

  • 右键单击项目>属性
    • 配置:
    路径中的任何空格都应自动转义。任何向后斜杠都应自动替换为向前斜杠

    例如,“附加选项”中的“所有选项”文本框如下所示:

    -std=c11 -g3 -pedantic -Wall -Wextra -O0 -g -I/C/Program\ Files\ \(x86\)/Example/1.0/include/shared -I/C/Program\ Files\ \(x86\)/Example/1.0/include/other -I/C/Program\ Files\ \(x86\)/Example/1.0/include
    
    如果这不起作用,您可能必须修复路径并在附加选项中手动添加包含。例如,将
    /C/
    替换为
    C://

    -std=c11 -g3 -pedantic -Wall -Wextra -O0 -g -IC:/Program\ Files\ \(x86\)/Example/1.0/include/shared -IC:/Program\ Files\ \(x86\)/Example/1.0/include/other -IC:/Program\ Files\ \(x86\)/Example/1.0/include
    
    如果您使用的是Cygwin
    make
    ,并且如果您试图在命令中使用冒号清理或重建项目,则可能会得到一个
    ***多个目标模式。停止。
    错误消息。根据和的回答,“
    make
    看到路径中的
    ,认为这是另一个目标定义,因此出现错误。”

    解决方法是在每次生成项目之前删除生成的
    build
    dist
    文件夹。但是,这可能会很烦人,因此您可以尝试使用MinGW MSYS
    make
    (不要与MinGW
    make
    混淆,后者是)

    有关MinGW和MSYS配置说明,请参阅:

    • 为C/C++/Fortran配置NetBeans IDE:

    要使用MinGW和Unicode,应安装最新版本的MinGW-w64。见:


    @JesseGood,那么
    -std=c11
    呢?那么你在想什么其他的问题呢?信息存在于其他地方并不意味着它不应该存在于堆栈溢出上。我还添加了更多关于NetBeans网站上可能不存在的
    make
    问题的信息。关于代码帮助,我说可以从现有来源自动配置代码帮助。但是,如果我创建一个新的C项目,在顶部键入
    #include
    ,然后尝试编译,它会显示
    致命错误:例如。h:没有这样的文件或目录
    。它不是自动的。它无法神奇地知道
    example.h
    的位置。我必须手动配置
    example.h
    的位置。@JesseGood
    C:\MinGW\…
    目录仅用于演示它在我的计算机上的外观。当然,如果它们已经存在,那么添加它们将是荒谬的。我已经添加了您关于编译器标志的建议。
    C:\ProgramFiles(x86)\Example\1.0\include
    中的空格应该自动转义。从“所有选项”文本框中可以看到:
    C:/Program\Files\\(x86\)/Example/1.0/include
    。一些SDK和头文件安装在
    C:\ProgramFiles(x86)
    中。最后一条评论:看起来好多了(删除了否决票)。此外,刚开始使用前斜杠
    /
    可能会更好地避免问题。希望有人觉得这有用(我会删除我的旧评论,因为它们只会占用空间)。