不带 -I 标志的链接 Boost 标头(来自 nuwen.net 的 MinGW Distro)
Posted
技术标签:
【中文标题】不带 -I 标志的链接 Boost 标头(来自 nuwen.net 的 MinGW Distro)【英文标题】:Link Boost headers without -I flag ( MinGW Distro from nuwen.net ) 【发布时间】:2018-08-09 13:37:04 【问题描述】:我有带有 GCC 编译器和 Boost Libs 的 MinGW Distro(从 nuwen.net 下载)。
我需要链接一些 Boost 标头。并且 GCC 不会在 "C:\MinGW\include"
文件夹中查找标题。它只在这个文件夹中寻找:
g++ ./server.cpp -v -c
#include "..." search starts here:
#include <...> search starts here:
c:\mingw\bin\../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../include/c++/8.1.0
c:\mingw\bin\../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../include/c++/8.1.0/x86_64-w64-mingw32
c:\mingw\bin\../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../include/c++/8.1.0/backward
c:\mingw\bin\../lib/gcc/x86_64-w64-mingw32/8.1.0/include
c:\mingw\bin\../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed
c:\mingw\bin\../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include
End of search list.
在我的 makefile 中我必须这样做
g++ -I "C:\MinGW\include" ./main.cpp
但我只想这样做:
g++ ./main.cpp
我可以为 gcc 设置一些 Windows 10 环境变量还是我需要自己设置 gcc 或类似的东西?
还是我应该总是写标志-I
?
【问题讨论】:
【参考方案1】:我明白了。
我必须在命令行中编译它,它由文件C:\MinGW\open_distro_window.bat
打开。如说明中所述,在这些网站的第三段中。
【讨论】:
以上是关于不带 -I 标志的链接 Boost 标头(来自 nuwen.net 的 MinGW Distro)的主要内容,如果未能解决你的问题,请参考以下文章
带有 Qt/boost 项目的 VC xtree 内部标头中的语法错误
简单线程程序的链接器错误(来自 boost_chrono 的符号丢失)