我的前任有一个用C++编写的现有项目。他使用CodeBlocks作为IDE。
我从未使用过此IDE,几乎没有编程任何C++。他使用了tinyxml库,因此我将其添加到了项目中。
当我尝试构建它时,构建日志会显示如下内容:
g++.exe -Wall -fexceptions -DBOOST_THREAD_USE_LIB=1 -D_WIN32_WINNT=0x0501
-Wall -IC:\somepath\boost_1_74_0 -Iinclude -Isrc -IZ:\tinyxml
-c C:\project\AsyncSerial.cpp -o obj\Debug\AsyncSerial.o
问题:-Isrc -IZ:\tinyxml
在哪里定义?我没有Z:驱动器,并且想定义我自己的库路径。我在设置和项目设置中进行了搜索,但没有找到类似的东西。
编辑:同样适用于:
g++.exe -LC:\somepath\boost_1_74_0\stage\lib -o bin\Debug\project.exe obj\Debug\AsyncSerial.o obj\Debug\main.o obj\Debug\tinyxml\tinystr.o obj\Debug\tinyxml\tinyxml.o obj\Debug\tinyxml\tinyxmlerror.o obj\Debug\tinyxml\tinyxmlparser.o -lws2_32 C:\Programme\boost\boost_1_48_0\stage\lib\libboost_filesystem-mgw46-mt-s-1_48.a C:\Programme\boost\boost_1_48_0\stage\lib\libboost_system-mgw46-mt-s-1_48.a C:\Programme\boost\boost_1_48_0\stage\lib\libboost_date_time-mgw46-mt-sd-1_48.a C:\Programme\boost\boost_1_48_0\stage\lib\libboost_program_options-mgw46-mt-sd-1_48.a C:\Programme\boost\boost_1_48_0\stage\lib\libboost_thread-mgw46-mt-1_48.dll.a C:\Programme\boost\boost_1_48_0\stage\lib\libboost_regex-mgw46-1_48.dll.a
-lws2_32
值从何而来?我安装了boost到-L
中指定的路径。我的提升路径是在全局变量中设置的,它是唯一显示的全局变量。编辑2:
有关信息:我提升的路径是项目文件夹中的相对路径,而绝对不是程序文件中的相对路径。
添加了我的设置图片:
最佳答案
在中查找包含搜索目录的配置
子标签“链接器”中附近的链接器搜索路径。
要在选项卡(而非子选项卡)“链接器设置”中链接的库的配置。
我的CodeBlocks是16.01,但是无论您使用什么,都应该没有太大的不同。
OP评论的引用(使此答案完整):
这里的“它”是指链接器路径与问题中的配置屏幕截图不匹配的原因/位置。