我有一个要使用g ++编译的CMake项目。该项目可以在Linux上编译并运行。现在,我正在尝试使其在Windows上运行。
由于这个原因,我安装了MinGW并将其添加到PATH中,并且正在使用Git Bash。为了强制CMake使用g ++,我添加了以下env变量:
CC = C:\MinGW\bin\gcc
CXX = C:\MinGW\bin\g++
但是当我运行CMake时,它不会检测到任何编译器并告诉我:
-- The C compiler identification is unkown
-- The CXX compiler identification is unkown
我在github上创建了一个超级基本的示例,希望在Windows + MinGw上运行:https://github.com/j-o-d-o/Basic-CMake-Project
如何在Windows中使用env变量来强制CMake使用g ++和gcc编译器?
答案 0 :(得分:1)
我需要将def between(value, a, b):
# Find and validate before-part.
pos_a = value.find(a)
if pos_a == -1: return ""
# Find and validate after part.
pos_b = value.rfind(b)
if pos_b == -1: return ""
# Return middle part.
adjusted_pos_a = pos_a + len(a)
if adjusted_pos_a >= pos_b: return ""
return value[adjusted_pos_a:pos_b]
print(between(test, [0], '"'))
添加到CMake命令。
我检查我是否在Windows上,如果是,则将参数添加到Shell脚本中的CMake命令中。
在Windows上时,我还需要使用-G "MinGW Makefiles"
代替mingw32-make
。
现在还有其他一些问题,但是它可以解决我发布的问题/问题。