0

作为输入,函数获取文件路径和名称参数

const QString& buildSourcePathAndName  

它只需要提取路径以供进一步处理。我使用下面的代码来做到这一点。

boost::filesystem::path p(string(buildSourcePathAndName.toLatin1().data()));
m_pSourceCodePath = p.parent_path().string();

在 Windows 上它工作正常。但在 linux (ubuntu) 上我无法编译它,得到错误。

undefined reference to `boost::filesystem3::path::parent_path() const'

我已经阅读了有关此错误的信息 - 建议更改 boost lib 版本。我无法在我们的系统中执行此操作。这个问题的可能解决方案是什么?(我不想实现提取路径的代码,但宁愿使用一些现有的功能)

4

1 回答 1

2

在 Windows 上,boost 库使用编译指示将库自动添加到链接器命令行。在为 linux 构建时,您需要在您使用的任何构建系统中显式添加库(按照 ForEveR 和 hmjd 的建议,在链接器命令行末尾添加 -lboost_filesystem)

于 2013-01-28T12:14:34.293 回答