无法使用 ms-iot/husky 在 windows 中从源构建 husky

Unable to build husky from source in windows using ms-iot/husky

当我 运行 catkin_make_isolated ,windows 无法构建时,我正在尝试使用 https://github.com/ms-iot/husky/tree/melodic-devel,but 的回购从 windows 中的源代码构建 husky这是因为 husky 使用 "unistd.h" 而我无法在 windows 中得到 header,有什么解决方法吗?

错误: ==>处理catkin包:'husky_base' ==> 使用环境构建:'C:\Users\catkin_ws\devel_isolated\husky_msgs\env.bat' Makefile 存在,跳过显式 cmake 调用... ==> nmake cmake_check_build_system 在 'C:\Users\catkin_ws\build_isolated\husky_base'

Microsoft (R) 程序维护实用程序版本 14.25.28614.0 版权所有 (C) Microsoft Corporation。保留所有权利。

==> 'C:\Users\catkin_ws\build_isolated\husky_base'

中的 nmake

Microsoft (R) 程序维护实用程序版本 14.25.28614.0 版权所有 (C) Microsoft Corporation。保留所有权利。

[ 11%] 构建目标 husky_base__setup_util.py_exec_install_python [ 17%] 建设 CXX object CMakeFiles/horizon_legacy.dir/src/horizon_legacy/Logger.cpp.obj cl:命令行警告 D9002:忽略未知选项“-std=c++11” Logger.cpp C:\Users\catkin_ws\src\husky\husky_base\src\horizon_legacy\Logger.cpp(50): 致命错误 C1083: 无法打开包含文件: 'unistd.h': 没有那个文件或目录 NMAKE:致命错误 U1077:'C:\PROGRA~2\MICROS~119\COMMUN~1\VC\Tools\MSVC25~1.286\bin\Hostx64\x64\cl.exe':return 代码“0x2” 停止。 NMAKE:致命错误 U1077:“"C:\Program Files (x86)\Microsoft Visual Studio19\Community\VC\Tools\MSVC.25.28610\bin\HostX64\x64\nmake.exe"”:return 代码“0x2” 停止。 NMAKE:致命错误 U1077:“"C:\Program Files (x86)\Microsoft Visual Studio19\Community\VC\Tools\MSVC.25.28610\bin\HostX64\x64\nmake.exe"”:return 代码“0x2” 停止。 <== 无法处理包 'husky_base': 命令 '['C:\Users\catkin_ws\devel_isolated\husky_msgs\env.bat', 'nmake']' returned non-zero 退出状态 2

通过 运行ning 重现此错误: ==> cd 'C:\Users\catkin_ws\build_isolated\husky_base' && 'C:\Users\catkin_ws\devel_isolated\husky_msgs\env.bat' nmake

命令失败,正在退出。

我下载了最新版本的 repo,发现文件“\husky-melodic\husky_base\src\horizon_legacy\Logger.cpp”中有一对不匹配的#if/#endif 对。我在修改 Logger.cpp 文件后成功构建了 repo。

#include <iostream>
#include <fstream>
#include <signal.h>

#if !defined(_WIN32)
#  include <unistd.h>
#else
#  include <windows.h>
#endif