我的计算机上有 2 个不同的 g++ 编译器:
- 一个在标准目录(C:\MinGW),
- 一种是便携式发行版。
现在我正在尝试链接一个 c++ 项目。
问题是,它与使用 g++ 的可移植发行版编译的 boost 库相关联。标准安装目录当然包含在PATH
环境变量中。因此,当我尝试编译我的项目时,它会产生链接器错误。
我尝试创建一个批处理文件,该文件在 PATH 变量的开头添加了可移植版本的目录。没有运气。也许有人可以帮助我?
@echo off
set PATH=%~dp0..\c++\compiler\bin;%PATH%
REM cd /d "%~dp0"
..\c++\compiler\bin\g++ main.cpp ^
-std=c++0x -static-libgcc -static-libstdc++ ^
-I"../c++/include" ^
-L"../c++/lib" ^
-l"boost_serialization-mgw46-mt-1_52" ^
-l"boost_system-mgw46-mt-1_52" ^
-o output.exe -W -O2
pause
注意:我在 g++ 命令之前使用了“..\c++\compiler\bin\”,因为我想确保它使用了正确的路径,但它当然不会按我预期的方式工作。