我目前正在尝试根据Windows版本https://emanual.robotis.com/docs/en/platform/turtlebot3/pc_setup/
为turtlebot3设置虚拟环境。在Windows下设置Ros1可以正常工作,但是命令
turtlebot网站上的catkin_make
给我一个错误。 CMakeError:
确定包含文件pthread.h是否存在失败,并且 以下输出:更改目录: C:/ ws / turtlebot3 / build / CMakeFiles / CMakeTmp
运行构建命令:nmake / nologo cmTC_af455 \ fast &&“ C:\ Program 文件(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
CheckIncludeFile.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”
停止。
CMakeOutput:
系统为:Windows-10.0.18363-AMD64编译C编译器 标识源文件“ CMakeCCompilerId.c”成功。编译器: C:/程序文件(x86)/ Microsoft Visual Studio / 2019 /社区/ VC /工具/MSVC/14.26.28801/bin/Hostx64/x64/cl.exe 构建标志:ID标志:
输出为:0 Microsoft(R)C / C ++优化编译器版本 x64的19.26.28806版权所有(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文件 (x86)/ Microsoft Visual Studio / 2019 /社区/ VC /工具/MSVC/14.26.28801/bin/Hostx64/x64/cl.exe 构建标志:ID标志:
输出为:0 Microsoft(R)C / C ++优化编译器版本 x64的19.26.28806版权所有(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 文件(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-清单-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 文件(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-清单-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 文件(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-清单-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 文件(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-清单-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
在执行命令期间,控制台中还会出现错误文本:
CMake错误于 opt / rosdeps / x64 / share / protobuf / protobuf-targets.cmake:37(消息): 已经定义了此导出集中的一些(但不是全部)目标。
定义的目标:protobuf :: libprotobuf; protobuf :: libprotoc
尚未定义的目标:protobuf :: protoc