【发布时间】:2016-11-18 22:54:09
【问题描述】:
【问题讨论】:
-
I've tried an original guide here , but it doesn't work for me.- 详细说明,究竟是什么不起作用。 -
我只是犯了一个错误 - 忘记在我的系统的 PATH 变量中包含 fasm 的路径。我是新来的,所以我应该在这里发布一个完整的解决方案吗?
【问题讨论】:
I've tried an original guide here , but it doesn't work for me. - 详细说明,究竟是什么不起作用。
所以,我设法在CMake\share\cmake-3.7\Modules\ 目录中添加了三个文件,如here 所述(我使用的是 Windows):
CMakeDetermineASM_FASMCompiler.cmake:
set(ASM_DIALECT "_FASM")
set(CMAKE_ASM${ASM_DIALECT}_COMPILER_LIST fasm)
include(CMakeDetermineASMCompiler)
set(ASM_DIALECT)
CMakeTestASM_FASMCompiler.cmake:
set(ASM_DIALECT "_FASM")
include(CMakeTestASMCompiler)
set(ASM_DIALECT)
CMakeASM_FASMInformation.cmake:
set(ASM_DIALECT "_FASM")
set(CMAKE_ASM${ASM_DIALECT}_SOURCE_FILE_EXTENSIONS s;asm)
set(CMAKE_ASM${ASM_DIALECT}_COMPILE_OBJECT "<CMAKE_ASM${ASM_DIALECT}_COMPILER> <SOURCE> <OBJECT>")
include(CMakeASMInformation)
set(ASM_DIALECT)
不要忘记将 FASM 目录包含到您的 Path 变量中
而且它工作得很好!
【讨论】:
@alexfsx 的回答完美,不要忘记将enable_language(ASM_FASM) 添加到CMakeLists.txt 中。在这种情况下,最好将 *.cmake 文件与项目一起保存,例如将它们放置在项目中。 cmake 子文件夹并将其添加到模块搜索路径中:
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
【讨论】: