Makefile 做出奇怪的行为
使用CMake生成Makefile后,我在MSYS中运行:Makefile 做出奇怪的行为,makefile,cmake,mingw,msys,Makefile,Cmake,Mingw,Msys,使用CMake生成Makefile后,我在MSYS中运行: msys>make 它在msys中启动了cmd.exe,并启动了新的make.exe进程,但没有执行任何操作。 这不是一个单一的案例——我尝试用CMake构建的每个项目都会导致这个陷阱。 怎么了?CMake认为MSYS和MinGW makefiles不一样。在本例中,我用于生成MSYS makefiles。如果您想使用MinGW编译器,我建议您使用MinGW shell提示符而不是MS cmd.exe。这可以确保正确设置多个Mi
msys>make
它在msys中启动了cmd.exe,并启动了新的make.exe进程,但没有执行任何操作。
这不是一个单一的案例——我尝试用CMake构建的每个项目都会导致这个陷阱。
怎么了?CMake认为MSYS和MinGW makefiles不一样。在本例中,我用于生成MSYS makefiles。如果您想使用MinGW编译器,我建议您使用MinGW shell提示符而不是MS cmd.exe。这可以确保正确设置多个MinGW编译器特定的环境变量 然后使用MinGW makefile作为生成器,使用mingw32 make作为make程序 如果使用MSYS,则必须使用MSYS Makefiles,如果安装正确,则应将make程序称为simply make
如果生成MinGW makefile并调用make,则会调用错误的make程序。明确指定mingw32 make。MinGW不是MSYS,甚至在CMake上下文之外。只需在MSYS之外构建CMake项目。它也会跑得更快。