CMake Error: The current CMakeCache.txt directory is different…[通俗易懂]

CMake Error: The current CMakeCache.txt directory is different…[通俗易懂]零、问题描述开始学ROS时,需要编译别人的功能包,常常把别人的工作空间拿过来使用,但编译时会出现各种错误,如下的目录问题:CMakeError:ThecurrentCMakeCache.txtdirectory/home/vistar/desktop/catkin_ws/build/CMakeCache.txtisdifferentthanthedirectory/ho……………

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

零、问题描述
开始学ROS时,需要编译别人的功能包,常常把别人的工作空间拿过来使用,但编译时会出现各种错误,如下的目录问题:
CMake Error: The current CMakeCache.txt directory /home/vistar/desktop/catkin_ws/build/CMakeCache.txt is different than the directory /home/vistar/桌面/catkin_ws/build where CMakeCache.txt was created. This may result in binaries being created in the wrong place. If you are not sure, reedit the CMakeCache.txt

CMake Error: The source “/home/vistar/desktop/catkin_ws/src/CMakeLists.txt” does not match the source “/home/vistar/桌面/catkin_ws/src/CMakeLists.txt” used to generate cache. Re-run cmake with a different source directory.
Invoking “cmake” failed.

一、问题分析

  1. 错误提示翻译一下就是你现在的CMakeCache.txt 文件路径和编译文件记录的CMakeCache.txt 路径不一样。
    (编译时,编译器会根据记录寻找CMakeCache.txt 文件)
    第二个错误也是因为原有记录和现在的路径不一致,不过是CMakeLists.txt文件。
    我以前修改过Ubuntu的目录名,中文改英文,可以看到上面两个路径,一个中文一个英文,就是这个原因导致的。
  2. 在开始创建工作空间时,CMakeCache.txt 和 CMakeLists.txt 本来是不存在的,经过一次catkin_make编译才出现的,把现有的删掉,再编译一次。

二、解决办法

  1. 错误一:将…/build/CMakeCache.txt删掉,重新编译
  2. 错误二:将…/src/CMakeLists.txt删掉,重新编译

最省事的方法:直接将 /build 和 /devel 目录删掉,重新编译 (感谢 如约—————而至weixin_43216765 的提醒,2022-08-28)

三、总结
自己试出来的方法,也许可以通过修改某个文件来解决,如果你有更好的办法,希望可以在下面留言,谢谢你的分享。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/211016.html原文链接:https://javaforall.net

(0)
上一篇 2025年7月25日 上午7:43
下一篇 2025年7月25日 上午8:15


相关推荐

  • Pycharm代码提示「建议收藏」

    Pycharm代码提示「建议收藏」点击File然后将PowerSaveMode旁边的√去掉就可以了我安装了中文插件,中文就是省电模式,取消勾选就可以实现代码提示

    2022年8月27日
    4
  • Paxos算法详解

    Paxos算法详解Paxos、Raft分布式一致性算法应用场景一文讲述了分布式一致性问题与分布式一致性算法的典型应用场景。作为分布式一致性代名词的Paxos算法号称是最难理解的算法。本文试图用通俗易懂的语言讲述Paxos算法。Paxos算法是Lamport宗师提出的一种基于消息传递的分布式一致性算法,使其获得2013年图灵奖。Paxos由Lamport于1998年在《ThePart-TimeParliament》论文中首次公开,最初的描述使用希腊的一个小岛Paxos作为比喻,描述了Paxos小岛中通过决议的流程,并以此命

    2025年7月28日
    3
  • PostgreSql安装过程

    PostgreSql安装过程安装环境 Win7 x64 安装包对应版本 postgresql 10 20 1 windows x64 exepgadmin4 4 30 x64 exe 最开始是参考菜鸟教程上的安装教程开始安装菜鸟教程 https www runoob com postgresql windows install postgresql html 然后安装完成后运行报错 ThepgAdmin4s 百度这个问题 说要独立安装 pgAdmin4 之后就重新

    2026年3月18日
    2
  • mysql unpivot_UNPIVOT逆透视以及动态逆透视存储过程

    mysql unpivot_UNPIVOT逆透视以及动态逆透视存储过程今天练习 MSSQLServer 逆透视的功能 首先准备一些可以逆透视的数据 IFOBJECT ID tempdb dbo Part summary ISNOTNULLDRO Part summaryCREAT Part summary Item NVARCHAR 40 B DECIMAL 18 2 Q DECIMAL 18 2

    2026年3月17日
    2
  • MD5使用

    MD5使用MD5 即 Message DigestAlgori 信息 摘要算法 5 用于确保信息传输完整一致 是计算机广泛使用的散列算法之一 又译摘要算法 哈希算法 主流编程语言普遍已有 MD5 实现 将数据 如汉字 运算为另一固定长度值 是散列算法的基础原理 MD5 的前身有 MD2 MD3 和 MD4 nbsp nbsp nbsp nbsp nbsp nbsp nbsp MD5 较老 散列长度通常为 128 位 随着计算机运算能力提高 找到 碰撞 是可能

    2026年3月19日
    3
  • AI生图1天轻松制作整套平面作品集!效率提升50%!

    AI生图1天轻松制作整套平面作品集!效率提升50%!

    2026年3月13日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号