在Linux x86_64系统中编译mission

以下在ubuntu18.10 + gcc8.3编译通过。

安装编译工具:

bash 复制代码
sudo apt install build-essential
sudo apt install cmake

重命名以下目录中的`wsf_module`为`wsf_module-`(子目录的不用管)以屏蔽图形界面相关的模块:

bash 复制代码
swdev/src/engage
swdev/src/evt_reader
swdev/src/mover_creator
swdev/src/mystic
swdev/src/post_processor
swdev/src/sensor_plot
swdev/src/warlock
swdev/src/weapon_tools
swdev/src/wizard

如果没有装好gtest,把相关的测试从CMakeLists.txt中移除,这是最省事编译最快的方式。

修改以下文件,注释其中的`add_subdirectory(test)`:

bash 复制代码
swdev/src/tools/util/CMakeLists.txt
swdev/src/tools/util_script/CMakeLists.txt
swdev/src/tools/artificer/CMakeLists.txt
swdev/src/tools/geodata/CMakeLists.txt
swdev/src/tools/profiling/CMakeLists.txt
swdev/src/wsf_plugins/wsf_p6dof/p6dof/CMakeLists.txt
swdev/src/wsf_plugins/wsf_coverage/CMakeLists.txt
swdev/src/wsf_plugins/wsf_multiresolution/CMakeLists.txt
swdev/src/wsf_plugins/wsf_air_combat/CMakeLists.txt
swdev/src/core/wsf_parser/CMakeLists.txt
swdev/src/core/sensor_plot_lib/CMakeLists.txt
swdev/src/core/wsf/CMakeLists.txt
swdev/src/core/wsf_cyber/CMakeLists.txt
swdev/src/core/wsf_mil/CMakeLists.txt
swdev/src/core/wsf_space/CMakeLists.txt

修改swdev/src/mission/CMakeLists.txt,注释以下行:

bash 复制代码
install_tests(tests ${PROJECT_NAME})
generate_wsf_auto_test(${PROJECT_NAME})
generate_wsf_regression_test(${PROJECT_NAME})

修改swdev/src/core/wsf_nx/CMakeLists.txt,注释以下行:

bash 复制代码
install_tests(test_sensor_plot ${_project_install_dir})

修改swdev/src/core/wsf_space/CMakeLists.txt,注释以下行:

bash 复制代码
install_tests(test ${_project_install_dir})

编译与安装:

bash 复制代码
cd <swdev所在目录>
mkdir builds
cd builds
cmake ../swdev/src
make -j4
make install
相关推荐
AlfredZhao1 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐3 天前
Linux内存扩容指南
linux
zylyehuo3 天前
Linux 彻底且安全地删除文件
linux
用户805533698034 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297914 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
Web3探索者5 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo5 天前
Linux系统中网线与USB网络共享冲突
linux
Sokach10157 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
AlfredZhao7 天前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone
zzzzzz3109 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql