如何为VxWorks创建CMake交叉编译工具链?

4
我想通过CMake生成VxWorks 6.x的makefiles和工作空间,但是CMake不支持VxWorks。我该如何为我的平台和正确的工具链创建相关的生成器?
我对CMake还不熟悉,但已经成功创建了一些为Windows VS 2015和Ubuntu生成的测试项目。
我尝试使用GNU和DIAB编译器为VxWorks 6.x创建一个项目,但CMake不支持它。
我了解到有一个叫做工具链、交叉编译和平台文件(.cmake)的东西,但我不知道如何编写它们以及将它们放在哪里。
我在互联网上看到了很多示例,但不知道是否需要重新构建带有新平台文件的CMake,还是只需从工具链或CMakeLists中引用它们。
我使用的是CMake 3.14的GUI版本。
我将生成器设置为:Eclipse CDT4 - Unix Makefiles。
当我选择交叉编译选项并提供名称VxWorks、版本、C++编译器(gnu/4.1.2-vxworks-6.6/x86-win32/bin/c++ppc.exe)时,它显示编译器未知,需要创建Platform/VxWroks。它无法构建一个简单的测试程序。
我看到一些人成功创建了所有所需的文件: Do (Cross-compile) platform files require an include guard? 但我无法下载一些示例来测试它,也没有教程告诉我如何做。
我希望能够使用CMake为VxWorks 6.x创建一个生成器,以编译库和可执行文件(.vxe),但不知道该怎么做。

在CMake中使用工具链不需要重新构建CMake。当您阅读有关工具链的示例时,可以开始编写它:设置编译器、sysroot、标志等等。然后尝试使用工具链构建示例,并检查实际选项,即CMake(即由CMake生成的Makefile)传递给编译器和链接器的选项。如果您在使用工具链时遇到错误并且无法解决,请具体地询问该错误。 - Tsyvarev
工具链不需要重新编译CMake,但是它要求我创建什么平台/VxWorks? - Shtirlic81
1个回答

0

CMake在VxWorks 6中支持不够完善,但在VxWorks 7的Workbench/Eclipse GUI环境中支持CMake。两个版本都不支持命令行cmake,例如“cmake .”


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接