我目前正在尝试根据 Windows 版本为turtlebot3 设置一个虚拟环境:https ://emanual.robotis.com/docs/en/platform/turtlebot3/pc_setup/
在 windows 下设置 Ros1 没有问题,但是命令
catkin_make
在turtlebot网站上给了我一个错误。CMake错误:
确定包含文件 pthread.h 是否存在失败,输出如下: Change Dir: C:/ws/turtlebot3/build/CMakeFiles/CMakeTmp
运行构建命令:nmake /nologo cmTC_af455\fast && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX64\x64\nmake. exe" -f CMakeFiles\cmTC_af455.dir\build.make /nologo -L CMakeFiles\cmTC_af455.dir\build
构建 C 对象 CMakeFiles/cmTC_af455.dir/CheckIncludeFile.c.obj
C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\cl.exe @C:\Users\Braun\AppData\Local\Temp\ nm756D.tmp
检查包含文件.c
C:\ws\turtlebot3\build\CMakeFiles\CMakeTmp\CheckIncludeFile.c(1):致命错误 C1083:无法打开包含文件:'pthread.h':没有这样的文件或目录
NMAKE:致命错误 U1077:'C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\cl.exe':返回代码 '0x2'
停止。
NMAKE:致命错误 U1077:'"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX64\x64\nmake.exe"':返回代码' 0x2'
停止。
CMake输出:
系统为:Windows - 10.0.18363 - AMD64 编译C编译器识别源文件“CMakeCCompilerId.c”成功。编译器:C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.26.28801/bin/Hostx64/x64/cl.exe 构建标志:Id标志:
输出为:0 Microsoft (R) C/C++ Optimizing Compiler Version 19.26.28806 for x64 版权所有 (C) Microsoft Corporation。版权所有。
CMakeCCompilerId.c Microsoft (R) 增量链接器版本 14.26.28806.0 版权所有 (C) Microsoft Corporation。版权所有。
/out:CMakeCCompilerId.exe CMakeCCompilerId.obj
编译C编译器识别源“CMakeCCompilerId.c”产生“CMakeCCompilerId.exe”
编译C编译器识别源“CMakeCCompilerId.c”产生“CMakeCCompilerId.obj”
C 编译器标识为 MSVC,可在“C:/ws/turtlebot3/build/CMakeFiles/3.17.3/CompilerIdC/CMakeCCompilerId.exe”中找到
编译CXX编译器识别源文件“CMakeCXXCompilerId.cpp”成功。编译器:C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.26.28801/bin/Hostx64/x64/cl.exe 构建标志:Id标志:
输出为:0 Microsoft (R) C/C++ Optimizing Compiler Version 19.26.28806 for x64 版权所有 (C) Microsoft Corporation。版权所有。
CMakeCXXCompilerId.cpp Microsoft (R) 增量链接器版本 14.26.28806.0 版权所有 (C) Microsoft Corporation。版权所有。
/out:CMakeCXXCompilerId.exe CMakeCXXCompilerId.obj
编译CXX编译器识别源“CMakeCXXCompilerId.cpp”产生“CMakeCXXCompilerId.exe”
编译CXX编译器识别源“CMakeCXXCompilerId.cpp”产生“CMakeCXXCompilerId.obj”
CXX 编译器标识为 MSVC,可在“C:/ws/turtlebot3/build/CMakeFiles/3.17.3/CompilerIdCXX/CMakeCXXCompilerId.exe”中找到
通过以下输出确定 C 编译器是否工作:更改目录:C:/ws/turtlebot3/build/CMakeFiles/CMakeTmp
运行构建命令:nmake /nologo cmTC_6bdf7\fast && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX64\x64\nmake. exe" -f CMakeFiles\cmTC_6bdf7.dir\build.make /nologo -L CMakeFiles\cmTC_6bdf7.dir\build
构建 C 对象 CMakeFiles/cmTC_6bdf7.dir/testCCompiler.c.obj
C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\cl.exe @C:\Users\Braun\AppData\Local\Temp\ nm6A32.tmp
testCCompiler.c
链接 C 可执行文件 cmTC_6bdf7.exe
C:\opt\python27amd64\Lib\site-packages\cmake\data\bin\cmake.exe -E vs_link_exe --intdir=CMakeFiles\cmTC_6bdf7.dir --rc=C:\PROGRA~2\WI3CF2~1\10 \bin\100183~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100183~1.0\x64\mt.exe --manifests -- C:\PROGRA~ 2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\cmTC_6bdf7.dir\objects1.rsp @C:\Users\Braun \AppData\Local\Temp\nm6B6C.tmp
检测使用以下输出编译的 C 编译器 ABI 信息:更改目录:C:/ws/turtlebot3/build/CMakeFiles/CMakeTmp
运行构建命令:nmake /nologo cmTC_5fcdd\fast && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX64\x64\nmake. exe" -f CMakeFiles\cmTC_5fcdd.dir\build.make /nologo -L CMakeFiles\cmTC_5fcdd.dir\build
构建 C 对象 CMakeFiles/cmTC_5fcdd.dir/CMakeCCompilerABI.c.obj
C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\cl.exe @C:\Users\Braun\AppData\Local\Temp\ nm6C84.tmp
CMakeCCompilerABI.c
链接 C 可执行文件 cmTC_5fcdd.exe
C:\opt\python27amd64\Lib\site-packages\cmake\data\bin\cmake.exe -E vs_link_exe --intdir=CMakeFiles\cmTC_5fcdd.dir --rc=C:\PROGRA~2\WI3CF2~1\10 \bin\100183~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100183~1.0\x64\mt.exe --manifests -- C:\PROGRA~ 2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\cmTC_5fcdd.dir\objects1.rsp @C:\Users\Braun \AppData\Local\Temp\nm6CC4.tmp
通过以下输出确定 CXX 编译器是否工作:更改目录:C:/ws/turtlebot3/build/CMakeFiles/CMakeTmp
运行构建命令:nmake /nologo cmTC_f8e3d\fast && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX64\x64\nmake. exe" -f CMakeFiles\cmTC_f8e3d.dir\build.make /nologo -L CMakeFiles\cmTC_f8e3d.dir\build
构建 CXX 对象 CMakeFiles/cmTC_f8e3d.dir/testCXXCompiler.cxx.obj
C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\cl.exe @C:\Users\Braun\AppData\Local\Temp\ nm6DEC.tmp
testCXXCompiler.cxx
链接 CXX 可执行文件 cmTC_f8e3d.exe
C:\opt\python27amd64\Lib\site-packages\cmake\data\bin\cmake.exe -E vs_link_exe --intdir=CMakeFiles\cmTC_f8e3d.dir --rc=C:\PROGRA~2\WI3CF2~1\10 \bin\100183~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100183~1.0\x64\mt.exe --manifests -- C:\PROGRA~ 2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\cmTC_f8e3d.dir\objects1.rsp @C:\Users\Braun \AppData\Local\Temp\nm6E2B.tmp
检测使用以下输出编译的 CXX 编译器 ABI 信息:更改目录:C:/ws/turtlebot3/build/CMakeFiles/CMakeTmp
运行构建命令:nmake /nologo cmTC_39a62\fast && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX64\x64\nmake. exe" -f CMakeFiles\cmTC_39a62.dir\build.make /nologo -L CMakeFiles\cmTC_39a62.dir\build
构建 CXX 对象 CMakeFiles/cmTC_39a62.dir/CMakeCXXCompilerABI.cpp.obj
C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\cl.exe @C:\Users\Braun\AppData\Local\Temp\ nm6F24.tmp
CMakeCXXCompilerABI.cpp
链接 CXX 可执行文件 cmTC_39a62.exe
C:\opt\python27amd64\Lib\site-packages\cmake\data\bin\cmake.exe -E vs_link_exe --intdir=CMakeFiles\cmTC_39a62.dir --rc=C:\PROGRA~2\WI3CF2~1\10 \bin\100183~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100183~1.0\x64\mt.exe --manifests -- C:\PROGRA~ 2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\cmTC_39a62.dir\objects1.rsp @C:\Users\Braun \AppData\Local\Temp\nm6F64.tmp
命令期间控制台中也有错误文本:
opt/rosdeps/x64/share/protobuf/protobuf-targets.cmake:37 处的 CMake 错误(消息):此导出集中的一些(但不是全部)目标已定义。
目标定义:protobuf::libprotobuf;protobuf::libprotoc
目标尚未定义:protobuf::protoc