我正试图为GreenHills编译器创建一个cmake工具链文件。当我使用cmake -T C:\ghs\multi506时,一切都很好。但是,在使用set(GHS_TOOLSET_ROOT C:/ghs/multi506)行创建了工具链文件之后,我得到了错误消息:
CMake错误:在GHS_TOOLSET_ROOT "C:/ GHS /multi506/“中没有CMake工具集
有什么问题吗?
发布于 2021-10-22 01:55:33
-T和GHS_TOOLSET_ROOT的使用是非常挑剔的。这是因为试图保持与原始生成器实现的向后兼容性,试图找到“最新”编译器。
“-T”采用绝对路径或相对路径。
-T C:\ghs\multi506意味着编译器在这个目录中。它将含有gbuild.exe等。
-T multi506将把multi506附加到GHS_TOOLSET_ROOT中。因此,CMake将在C:\ghs\multi506中查找gbuild.exe。
如果不使用-T,则启用自动搜索模式。CMake将在GHS_TOOLSET_ROOT中搜索名为comp_[^;]+的目录,这是绿山为其编译器使用的命名方案。因此,在这种情况下,它将寻找类似C:\ghs\multi506\comp_20210504的东西。
我更喜欢使用带有编译器目录绝对路径的-T。
https://stackoverflow.com/questions/69016320
复制相似问题