我试图在用C++制作的QtCreator项目中使用boost/filesystem。问题是,在构建时,我得到了以下错误:
"error: undefined reference to `boost::system::generic_category()'"要使用boost,我执行了以下操作:
根本原因是:需要构建FileSystem。因此,我通过以下方法构建了这个boost库:


编译时,错误将消失。
谢谢你的帮助。加廷
发布于 2020-06-14 08:28:51
正如@drescherjm所评论的那样,您需要构建boost库。
它们是,而不是D:/Development/Boost/libs目录中的。
您似乎在使用Windows,并在您的"D:“驱动器上安装了boost。
我假设您使用的是MinGw编译器,它是Qt Creator附带的,而不是Visual。
要用boost构建MinGw,首先打开相关的Qt命令提示符,例如Qt 5.12.3 (MinGW 7.3.0 64-bit)并键入以下内容:
D:
cd \Development\Boost
bootstrap.bat gcc
b2 toolset=gcc link=shared threading=multi --build-type=complete stage这将在您的目录: MinGw boost库中构建D:\Development\Boost\stage\lib。
然后将链接命令更改为:
LIBS += -LD:/Development/Boost/stage/lib -l boost_system-mgw73-mt-x64-d-1_66注意:boost_system库的确切名称取决于boost在您的版本中如何命名它。
请参见启动Windows入门:库命名。,这里的答案是:文件系统和您在D:\Development\Boost\stage\lib目录中构建的文件名。
https://stackoverflow.com/questions/62359347
复制相似问题