CMake是一个跨平台的开源构建系统生成器。它为构建系统生成文件,如本机makefile,ninja-build和几个集成开发环境的项目文件。
如何将 pkg-config 与 vcpkg 和 cmake 一起使用?
我正在使用 vcpkg 开发一个 cmake 项目。运行 vcpkg install mesa[*] 后,我得到了输出: mesa 提供 pkg-config 模块: # 梅萨 EGL 库 埃格尔 # Mesa OpenGL ES 1.1 CM libra...
我正在尝试在 opensuse 15.5 上从源代码重建 rpm 包 perl-BSSolv 并使用新的构建包进行调试。在开始构建调试之前,我需要删除优化选项 -O2 或 -O3...
我正在使用 CMake 构建一个 Qt 项目,尝试将其与 Qt OPC UA 插件链接。 问题是,无论我选择哪种构建配置,编译后的可执行文件总是会链接到
我无法将一个 qml 文件导入到另一个 qml 文件中,设置 Qt QML 项目时在 CMake 中的反映相同
当我刚刚创建一个项目并编写cmake时,一切都很顺利,当我开始添加新的qml文件然后执行配置时,会出现2个警告: CMake 警告(开发)位于 /home/zxc...
假设我正在编译一些非常复杂的项目,其中包含数百万行代码。它由于无法找到(某些)库(.h 或 .so 文件)而失败,使用如下代码: #包括 假设我正在编译一些非常复杂的项目,其中包含数百万行代码。它由于无法找到(某些)库(.h 或 .so 文件)而失败,使用如下代码: #include <mymodule/mylibrary.h> 如何在可读输出中让链接器告诉我它在哪里寻找库? 我想要一个目录/路径列表,而不仅仅是no such file or directory,不知道为什么。 另外,我希望最后的斜杠非常清楚......我不想忽略实际路径中的双斜杠,并最终浪费时间在其他地方寻找问题(如果可能的话) . 我相信如果您在链接器选项中添加“-t --verbose”,您会得到您想要的东西。我不是 Linux 和 ld 专家,但这就是我使用这些选项时看到的情况: -t 列出找到的符号以及位置。 --verbose 使链接器向您显示有关其配置的各种有用信息。特别是,它会向您显示“COMPILER_PATH=”和“LIBRARY_PATH=”部分,告诉您搜索头文件和库的文件夹列表 例如,在我的计算机上,-t选项生成如下行: -lXt (/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/libXt.so) Xt 是我链接的库之一。这行告诉我链接器找到 libXt.so 的路径。 另外,--verbose 给了我这些: COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/ LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../:/lib/:/usr/lib/ 它们具有头文件和库的默认包含文件夹。 我使用 makefile 来编译我的程序,因此我使用这一行添加了这些链接器选项: LDFLAGS += -t --verbose
Conan2:从 Cmake 中的 bash 脚本加载环境变量
在 Conan2 中,有新的自动生成文件,其中包含有用的变量,例如包位置。 在 macOS 中,该文件称为 conanbuild.sh,它调用一个名为 conanbuildenv-
在 Conan2 中,有新的自动生成文件,其中包含有用的变量,例如包位置。 在 macOS 中,该文件称为 conanbuild.sh,它调用一个名为 conanbuildenv-
我尝试使用 CMake 编译我的 LLVM 项目(共享库)。 问题出现在链接阶段。 我使用本教程:http://llvm.org/docs/CMake.html#developing-llvm-passes-out-of-source 项目...
Ceres-solver 找不到本地 glog 和 gflags
我想在本地构建 ceres-solver,但是,它不断在我的 python 安装下而不是在标准 gnu 安装目录下查找 gflags 和 glog 库 /usr/local/lib /usr/...
我有一个 CMake 项目,部分是由另一个软件生成的。 准确来说,该项目包含: .cmake 文件 (empty_cpp.cmake)。该文件是自动生成的,因此,任何cha...
cmake 提供 CMAKE_PREFIX_PATH 作为参数不起作用?
我有这个简短的示例 CMakeLists.txt cmake_minimum_required(版本3.24) 项目(测试语言CXX) 包括(检查语言) 检查语言(CUDA) 如果(CMAKE_CUDA_COMPILER) 消息(“...
正如在此 gcc 补丁中提到的,std 模块是在 gcc 开发分支中构建的。我从源代码构建并尝试在 cmake 项目中使用它,但它显示未找到 std 模块。 这是我的最小例子:
我需要获取安装某些内容的特定路径,然后使用该路径告诉程序在运行时搜索位置。 这在 Windows 上按预期工作,但在 Linux 上(特别是
CMake 无法使用 find_package 找到 CryptoPP
我已经使用 sudo apt install libcrypto++-dev 安装了 C++ 库“Crypto++” 我使用以下命令找到 lib:find_package(CryptoPP REQUIRED) 但CMake由于某种原因找不到它,并打印
如何在 cmake 中使用多值参数,以便它在 echo 命令中打印为一个字符串?
我有一个函数,它接受我想要传递给目标中的函数的参数列表。仅当我尝试使用该多值参数时,它才会将第二个和更多参数放在后面......
我如何在 Windows powershell 上的 cmake 中正确包含带空格的路径,并使用变量或命令对其进行扩充以传递给 gcc?
唯一有效的方法是手动将整个路径与单个 qoutes '. 像 cmake -G Ninja -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_FLAGS='-IC:/Program" "F...
构建onnx时“'.../src/onnx/gen_proto.py'不是Conan命令”
我的项目中有以下 conanfile.py ,我在其中运行命令 conan install 。 --output-folder=build --build=missing -v。 导入操作系统 从柯南导入柯南文件 类 ProjectRecipe(Cona...
如何在 Mac 中使用 CMake 3.28 编译 C++ 模块项目
我在Mac上的CLion中有一个简单的程序,我无法使用cmake版本3.28进行编译。当我切换到 cmake 版本 3.27 时,一切正常。 如何启用 3.28 版本?根据...
我正在尝试构建使用介子的赛璐珞。我运行了 meson,但未能找到合适的 mpv 版本: 使用 pkg-config 可执行文件“/usr/bin/pkg-config”确定依赖项“mpv” 打电话...
cmake 没有为 Windows 上的 Xerces 3.2.5 版本生成 Xerces_autoconf_config.hpp 标头
我正在尝试按照这些说明从 Windows 源代码构建 Xerces 3.2.5 库。 我的编译器是 Visual Studio 2019。该版本是我最终使用的应用程序强制要求的...