VS2019+CMAKE编译外部库时出现error MSB3073: 命令“setlocal”错误
最近在编Ceres-Solver库的时候出现了这个错误,在VS里重新生成的时候出现error MSB3073: 命令“setlocal”错误,就这一个错误也没有其他问题。在项目上点右键,选择“属性”->“配置属性”->“链接器”->“ 常规 ”->“输出文件”,设置为$(OutDir)$(ProjectName)$(TargetExt)①:CMAKE时,设置的build目录不对的原因。③:在项目上
一、问题出现
最近在编Ceres-Solver库的时候出现了这个错误,在VS里重新生成的时候出现error MSB3073: 命令“setlocal”错误,就这一个错误也没有其他问题。
error MSB3073 是 Visual Studio 中的错误代码,它表示在执行命令时出现了问题。
"setlocal" 是一条命令,用于将当前环境设置为本地范围。它通常用于批处理文件,在执行完批处理文件之后,可以恢复原来的环境设置。
在网上也搜了相关解决方案,主要分为以下几种:
①:CMAKE时,设置的build目录不对的原因。如在源码(CMakelist.txt所在目录)主目录的外侧,新建了build的目录
②:install编译生成时需要权限的原因,以管理员身份运行VS
③:在项目上点右键,选择“属性”->“配置属性”->“常规”->“目标文件扩展名”,设置为.ocx 或者.dll
在项目上点右键,选择“属性”->“配置属性”->“链接器”->“ 常规 ”->“输出文件”,设置为$(OutDir)$(ProjectName)$(TargetExt)
但以上方法我试了都没有成功
二、问题解决
项目属性页——配置属性——生成事件——生成后事件——在生成中使用“是”修改为“否”
大功告成



魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)