Ich habe versucht, https://cmake.org/files/v3.11/cmake-3.11.0.tar.gz herunterzuladen und zu erstellen, aber es gibt keine cmake-gui im Unterordner ./bin nach dem Erstellen. Wird cmake-gui in einem anderen Quellarchiv bereitgestellt?
Ich habe versucht, https://cmake.org/files/v3.11/cmake-3.11.0.tar.gz herunterzuladen und zu erstellen, aber es gibt keine cmake-gui im Unterordner ./bin nach dem Erstellen. Wird cmake-gui in einem anderen Quellarchiv bereitgestellt?
Antworten:
Zwei Optionen hier:
cmake-gui
ist als cmake-qt-gui verpackt . Installieren Sie es mit:
sudo apt-get install cmake-qt-gui
Wenn Sie es wirklich aus dem Quellcode erstellen müssen, gehen Sie wie folgt vor:
sudo apt-get update
sudo apt-get build-dep cmake-qt-gui
wget https://cmake.org/files/v3.11/cmake-3.11.0.tar.gz
tar -xzf cmake-3.11.0.tar.gz
cd cmake-3.11.0/
./configure --qt-gui
make -j5
bin/cmake-gui
cmake-qt-gui
mit apt nach dem Kompilieren cmake
aus Quellen würde zu folgendem Fehler führen:Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: cmake-qt-gui : Depends: cmake (= 3.5.1-1ubuntu3) E: Unable to correct problems, you have held broken packages.
Nichts anderes hängt (wahrscheinlich) von cmake ab, also ist es ein Blattknoten. Deinstallieren Sie die deb. Holen Sie sich die neueste Quelle von https://cmake.org/ und packen Sie den Tarball irgendwo aus, CD hinein.
./bootstrap --qt-gui
make
make install
Angenommen, Sie haben das QT-Entwicklungsmaterial installiert. Sie erhalten sowohl reguläres Befehlszeilen-cmake als auch cmake-qui. Starten Sie sie über die Befehlszeile, indem Sie cmake oder cmake-gui eingeben. Ich weiß nicht, wie man Menüs hinzufügt.
In diesem speziellen Prozess habe ich beschlossen, die neueste Version von cmake mit der passenden Version von cmake zu konfigurieren (sorry, wenn dies verwirrend ist).
cmake-gui wird mit demselben Repository wie das Befehlszeilentool cmake kompiliert, aber die Standard-Build-Konfiguration für cmake ist nicht zum Erstellen von cmake-gui eingerichtet (weder die Curses-Schnittstelle noch die Qt-Schnittstelle).
Um cmake mit cmake-gui zu erstellen, müssen einige Variablen im cmake-Build-Skript festgelegt werden. Normalerweise tun Sie dies über die Benutzeroberfläche, aber es ist auch möglich, diese Variablen durch manuelles Bearbeiten von CMakeCache.txt im Build-Verzeichnis festzulegen. Dies wird in dieser Antwort gezeigt.
CMake erfordert Qt, kann es jedoch nicht automatisch finden. Eines der Dinge, die wir tun müssen, ist zu zeigen, wo sich die Qt CMake-Skripte befinden.
Laden Sie das Installationsprogramm von der Qt-Website herunter . In meinem Fall habe ich die neueste Version von 5.12 (zum Zeitpunkt des Schreibens 5.12.7) ausgewählt und mit allen Standardeinstellungen installiert.
Sie müssen ein Konto bei Qt erstellen, um das Installationsprogramm mit dieser Methode herunterladen zu können. Das Konto ist für Open Source-Benutzer kostenlos (wenn Sie dies verwenden, um cmake nur für Ihren eigenen Gebrauch zu erstellen; wenn Sie Qt für andere Zwecke verwenden möchten, sollten Sie überprüfen, ob Sie diese Version verwenden können).
Ich habe Qt in einem Ordner namens Qt in meinem Home-Verzeichnis installiert.
Dieser Installationsvorgang dauert eine Weile.
Ich denke, Qt könnte über apt verfügbar sein, aber für meine Zwecke brauchte ich den vollständigen Download für ein anderes Projekt, also hatte ich es trotzdem hier.
git clone https://gitlab.kitware.com/cmake/cmake.git
cd cmake
mkdir build
cd build
cmake ..
Dadurch wird unter anderem eine Datei mit dem Namen CMakeCache.txt in Ihrem Build-Ordner abgelegt.
Öffnen Sie diese Datei in Ihrem Texteditor und bearbeiten Sie die folgenden Zeilen, um die qt-Benutzeroberfläche zu aktivieren (ich habe diese gefunden, indem ich nach qt gesucht habe).
Beachten Sie, dass Sie PATH_TO_QT durch Ihr qt-Verzeichnis ersetzen müssen. In meinem Fall war PATH_TO_QT nur / home / myname / Qt.
//Build Qt dialog for CMake
BUILD_QtDialog:BOOL=ON
QT_QMAKE_EXECUTABLE:FILEPATH=PATH_TO_QT/5.12.7/gcc_64/bin/qmake
//The directory containing a CMake configuration file for Qt5Core.
Qt5Core_DIR:PATH=PATH_TO_QT/5.12.7/gcc_64/lib/cmake/Qt5Core
//The directory containing a CMake configuration file for Qt5Widgets.
Qt5Widgets_DIR:PATH=PATH_TO_QT/5.12.7/gcc_64/lib/cmake/Qt5Widgets
cmake ..
Wo N die Anzahl der Kerne ist, die Sie kompilieren möchten, habe ich in meinem Fall eingegeben make -j10
.
make -jN
sudo make install
sudo make install
ersetzt leider nicht die in / usr / bin gespeicherte Version von cmake.
Möglicherweise gibt es einen saubereren Weg, um diesen Schritt auszuführen.
Verwenden cmake --version
Sie diese Option, um zu überprüfen, ob Sie dies tun müssen. Wenn die mit apt gelieferte Version angegeben ist (für mich zum Zeitpunkt des Schreibens 3.10.2), müssen Sie dies tun.
Sie sollten auch überprüfen, ob sich Ihre Version von cmake in / usr / local / bin / befindet.
Ich musste Folgendes tun:
sudo mv /usr/bin/cmake /usr/bin/cmake_old
sudo ln -s /usr/local/bin/cmake /usr/bin/cmake
Ich hatte nicht erwartet, die neue Version von cmake mit / usr / bin / verknüpfen zu müssen, da / usr / local / bin in PATH sein sollte; Aus irgendeinem Grund würde es hartnäckig nur nach cmake in / usr / bin suchen und mir eine Fehlermeldung geben, dass / usr / bin / cmake nicht gefunden wurde, obwohl die neueste Version von cmake in / usr / local / bin verfügbar war.
Ich denke, es ist möglich, dass ein Zurücksetzen von Bash oder ein Neustart die Notwendigkeit einer Verknüpfung behoben haben könnte, aber ich bin mir nicht sicher.
cmake-gui
, um die Benutzeroberfläche zu startenCool!
Cmake-Version, die ich zu installieren versuche: Dieses Commit hat keine besondere Bedeutung. Ich habe nur die neueste Version geklont.
Ich bin der Meinung, dass diese Methode funktionieren sollte, wenn Sie die apt-Version von cmake verwenden, um die neueste Version von cmake während des gesamten Prozesses zu konfigurieren. Wenn dies nicht funktioniert, lass es mich in den Kommentaren wissen.