【问题标题】:Problems building XLNT library for Visual Studio 2017为 Visual Studio 2017 构建 XLNT 库的问题
【发布时间】:2022-08-21 02:20:18
【问题描述】:

我在 Visual Studio 2017 中构建 XLNT (https://github.com/tfussell/xlnt) 库时遇到问题,我很困惑。我下载了最新版本的库和最新版本的 CMake。当我运行 CMake gui 时,它找不到 libstudxml 文件。有帖子说需要下载的;所以我下载了那个库(https://www.codesynthesis.com/projects/libstudxml/#download)并将它放在第三方/libstudxml 中。

然后我得到错误,它在 libstudxml 中找不到一些 .hxx 文件。我发现这篇文章 https://discourse.cmake.org/t/cmake3-20-cant-generate-xint-package/2987 说我需要将 libstudxml.build\\CMakeLists.txt 文件中某些路径中的 libstudxml 替换为 xml。然后它仍然找不到这三个 .hxx 文件(content.hxx、exception.hxx 和 forward.hxx)。我查看了 libstudxml/xml 文件夹(它们都在那里,但没有扩展名)。我将 CMakeLists.txt 文件更改为没有 .hxx 扩展名,并且 Cmake 能够生成。

当我在 Visual Studio 中编译它时(在 Cmake GUI 中点击 Project),我得到了一些文件无法再次找到 content.hxx 文件并且构建失败的错误。我有点绕圈子跑。为了让 cmake 生成,我必须删除 .hxx 扩展名,但随后一些文件抱怨,因为他们正在寻找它们。我尝试将三个文件不带扩展名并从 CMakeLists.txt 文件中删除扩展名,但随后一些文件正在寻找不带扩展名的文件。保留带有和不带有扩展名的文件也是一个集群。我知道 C++ 可以处理无扩展名的头文件,但 CMake 文件似乎需要扩展名,但我认为 VS 对它们不满意。

此外,虽然我需要将文件夹名称更改为 xml 而不是 CMake 的 libstudxml,但源代码中的各种包含文件仍在寻找 libstudxml;所以这不起作用。

有什么想法吗?

谢谢 -

标签: c++ excel cmake


【解决方案1】:

我遇到了同样的问题,同样的进度和阻塞。实际上,更改扩展名或位置并不能解决问题。然后我试图找到另一个版本的 libstudxml 库,xlnt 的创建者可能使用了另一个版本。

所以我找到了以下存档:https://pkg.cppget.org/1/beta/libstudxml/ 并将文件放在 \xlnt-master\third-party\libstudxml 中,而不修改 CMake 路径的名称。这次我能够编译库(mingw32-make,在我的情况下我没有使用 VS17)。

【讨论】:

    猜你喜欢
    • 2019-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-18
    • 2019-05-26
    相关资源
    最近更新 更多