Ich habe Visual C++ Build Tools 2015 | Standalone compiler, libraries and scripts auf einem Low-End-Netbook installiert. Dies ist notwendig, weil die Maschine einen kleinen eMMC an die Platine gelötet hat, ohne dass tatsächlich Platz zur Verfügung steht.Was ist das -D, um Cmake zu sagen, wo man nmake finden kann?
nmake
ist unter %PROGRAM FILES%\Microsoft Visual Studio 14.0\VC\bin
installiert. Cmake kann es jedoch nicht finden, wenn es versucht, das Makefile zu generieren. Ich würde gerne eine -D
verwenden, um Cmake mitzuteilen, was das Makefile-Programm ist, aber ich habe Probleme, die list of -D defines for Cmake zu finden.
Der Vollständigkeit halber versuche ich, andere Microsoft-Tools zu vermeiden. Ich habe LLVM Build-Tools um C:\LLVM\bin
, also setze ich CMAKE_C_COMPILER
und CMAKE_CXX_COMPILER
. Aber ich brauchte weil ich kein Stand alone Make-Programm für Windows schon finden kann.
Was ist die -D
definieren zu nmake für Cmake?
Normalerweise würden Sie "Visual Studio ... Eingabeaufforderung" aus dem Startmenü starten. Dies setzt mehrere Umgebungsvariablen, um Compiler, Bibliotheken, Includes und nmake zu finden. Dann können Sie "cmake-G" NMake Makefiles ausführen. Dies wird dann Microsofts Tools verwenden. –
Ich benutze [Ninja] (https://ninja-build.org/) als eigenständiges make-Tool (nur eine ausführbare Datei) für alle Meine Projekte auf allen Plattformen Es ist schnell und sehr gut bei der Überprüfung der Abhängigkeit Ninja muss irgendwo im Suchpfad Ihres Systems sein, dann können Sie 'cmake.exe -G" Ninja "..' | 'ninja' aufrufen. – Florian
Nur verwenden clang ist momentan nicht möglich, ich glaube, da es nicht mit einem eigenen Linker kommt, also selbst wenn man NMake mit -D (CMAKE_MAKE_PROGRAM) setzt (https://cmake.org/cmake/help/v3.0/manual/cmake) -variables.7.html) Ich glaube, dass Sie die Binaries von verwenden können (http://llvm.org/builds/) und cmake anweisen, mindestens die Compiler von ihm zu verwenden. I Ich kann das jetzt nicht testen, weil ich keine Windows installiert habe, aber wenn du ein Ich bin mir nicht sicher, was ich sage, lassen Sie es mich wissen und ich gebe Ihnen weitere Informationen. –