CMake Warning at CMakeLists.txt:169 (export): Cannot create package registry file: /home/autrad/.cmake/packages/Sophus/204db1c0871e00ebceff3ae577383f54 No such file or directory
时间: 2023-08-08 17:04:34 浏览: 86
这个警告意味着CMake在创建Sophus库的包注册文件时遇到了问题。这可能是因为缺少目标文件夹或没有足够的权限来创建文件。
为了解决这个问题,您可以尝试以下几个步骤:
1. 确保您有足够的权限来在指定位置创建文件。您可以使用以下命令检查权限:
```
ls -ld /home/autrad/.cmake/packages/
```
如果您没有适当的权限,您可以使用sudo命令或与系统管理员联系以获取权限。
2. 如果"/home/autrad/.cmake/packages/"文件夹不存在,请创建它:
```
mkdir -p /home/autrad/.cmake/packages/
```
3. 如果上述步骤无法解决问题,您可以尝试清除CMake缓存并重新运行配置和编译过程。在Sophus库的源代码目录中,您可以执行以下命令:
```
rm -rf build
mkdir build
cd build
cmake ..
make
```
这些步骤应该有助于解决CMake警告并成功编译Sophus库。如果问题仍然存在,请确保您按照Sophus库的文档或与Sophus开发者社区寻求帮助。他们可能能够提供更具体的指导来解决问题。
相关问题
CMake Error at CMakeLists.txt:47 (add_library): Cannot find source file: src/Jni_Desensitis.cpp
这错误提示表示在 CMakeLists.txt 文件的第 47 行中,使用 `add_library` 函数时,找不到指定的源代码文件 `src/Jni_Desensitis.cpp`。
这可能是因为文件路径不正确或文件不存在导致的。您需要检查文件路径是否正确,或者检查文件是否存在于指定的路径中。如果文件确实存在,那么您可能需要检查文件权限或文件是否被其他程序占用。
cmake error at cmakelists.txt:32 (cmake_minimum_required): cmake 3.16...3.27
根据引用[1]和引用的内容,CMakeLists.txt文件中的cmake_minimum_required命令用于指定所需的最低CMake版本。在你提供的引用中,cmake_minimum_required命令指定了需要的最低版本为3.22。如果当前使用的CMake版本低于指定的最低版本,将会产生一个错误。
根据你的问题,你在CMakeLists.txt文件的第32行遇到了一个错误,错误信息是"cmake error at cmakelists.txt:32 (cmake_minimum_required): cmake 3.16...3.27?"。这个错误表明你的CMakeLists.txt文件中的cmake_minimum_required命令指定的最低版本范围是3.16到3.27之间,但是你当前使用的CMake版本不在这个范围内。
为了解决这个错误,你可以采取以下几个步骤:
1. 检查你当前使用的CMake版本,可以通过在终端中运行`cmake --version`命令来查看。
2. 如果你当前使用的CMake版本低于3.16或高于3.27,你可以尝试更新或降低你的CMake版本,以使其在指定的范围内。
3. 如果你的CMake版本在指定的范围内,但仍然遇到错误,请检查CMakeLists.txt文件中的cmake_minimum_required命令的语法和参数是否正确。
希望以上信息对你有帮助。如果你还有其他问题,请随时提问。