Я пытался загрузить https://cmake.org/files/v3.11/cmake-3.11.0.tar.gz и создать его, но нет никакого cmake-gui в./мусорном ведре подпапках после сборки. cmake-gui предоставляется в другом исходном архиве?
Две опции здесь:
cmake-gui
упаковывается как cmake-qt-gui. Установите его с:
sudo apt-get install cmake-qt-gui
Если действительно необходимо создать его из источника, делают следующее:
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 (вероятно), таким образом, это - вершина. Удалите deb. Получите последний источник от https://cmake.org / и распакуйте tarball где-нибудь, CD в него.
./bootstrap --qt-gui
make
make install
Принятие Вас имеют QT dev установленный материал. Вы заканчиваете и с регулярной командной строкой cmake и с cmake-qui. Запустите их с командной строки путем ввода cmake или cmake-gui, я не знаю о добавлении к меню.
В этом конкретном процессе я решил настроить последнюю версию cmake с подходящей версией cmake (извините, если это сбивает с толку).
cmake-gui скомпилирован из того же репозитория, что и инструмент командной строки cmake, но конфигурация сборки по умолчанию для cmake не настроена на сборку cmake-gui (ни интерфейс curses, ни интерфейс Qt).
Чтобы собрать cmake с cmake-gui, необходимо установить некоторые переменные в скрипте сборки cmake.Обычно вы можете сделать это через пользовательский интерфейс, но также можно установить эти переменные, вручную отредактировав файл CMakeCache.txt в каталоге сборки, что я покажу, как это сделать в этом ответе.
CMake требует Qt, но не может найти его автоматически. Одна из вещей, которые нам нужно сделать, - это показать, где находятся сценарии Qt CMake.
Загрузите установщик с веб-сайта Qt . В моем случае я выбрал последнюю версию 5.12 (на момент написания - 5.12.7) и установил ее со всеми настройками по умолчанию.
Вам необходимо создать учетную запись в Qt, чтобы загрузить программу установки этим методом; учетная запись бесплатна для пользователей с открытым исходным кодом (что вы и есть, если вы используете это просто для создания cmake для собственного использования; если вы планируете использовать Qt для чего-либо еще, вы должны проверить, можете ли вы использовать эту версию).
Я установил Qt в папку с именем Qt в моем домашнем каталоге.
Этот процесс установки займет некоторое время.
Я думаю, Qt может быть доступен через apt, но для моих целей мне нужна была полная загрузка для другого проекта, так что она у меня все равно была здесь.
git clone https://gitlab.kitware.com/cmake/cmake.git
cd cmake
mkdir build
cd build
cmake ..
, который, среди прочего, поместит файл с именем CMakeCache.txt в вашу папку сборки.
Откройте этот файл в текстовом редакторе и отредактируйте следующие строки, чтобы включить qt ui (я нашел их, выполнив поиск по qt).
Обратите внимание, что вам нужно заменить PATH_TO_QT на место, где находится ваш каталог qt, в моем случае PATH_TO_QT был просто / 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 ..
Где N - количество ядер, которые вы хотите скомпилировать, в моем случае я набрал make -j10
.
make -jN
sudo make install
sudo make install
, к сожалению, не заменяет версию cmake, хранящуюся в / usr / bin.
Может быть более чистый способ выполнить этот шаг.
Используйте cmake --version
, чтобы проверить, нужно ли вам это делать, если он дает версию, которая идет с apt (для меня на момент написания, 3.10.2), вам нужно будет сделай это.
Вы также должны убедиться, что ваша версия cmake находится в / usr / local / bin /
Мне нужно было сделать следующее:
sudo mv /usr/bin/cmake /usr/bin/cmake_old
sudo ln -s /usr/local/bin/cmake /usr/bin/cmake
Я не ожидал, что мне понадобится связывать новую версию cmake с / usr / bin /, поскольку / usr / local / bin должен находиться в PATH; по какой-то причине он упорно искал cmake только в / usr / bin и выдавал мне ошибку о том, что / usr / bin / cmake не был найден, хотя последняя версия cmake была доступна в / usr / local / bin.
Я предполагаю, что сброс bash или перезагрузка могли устранить необходимость связывания, но я не уверен.
cmake-gui
, чтобы запустить пользовательский интерфейс Круто!
Протестировано на Ubuntu Mate 18.04.1 x86_64
Версия Cmake, которую я пытаюсь установить: этот коммит ,особого значения в этом нет, я только что клонировал последнюю.
Я считаю, что этот метод должен работать, если вы используете apt-версию cmake для настройки последней версии cmake в течение всего этого процесса. Если это не сработает, дайте мне знать в комментариях.
В моем случае (например, OP) я хочу вернуться и собрать cmake-gui после того, как уже установил сборку последней версии cmake из исходных текстов.
Таким образом, с вероятностью (что маловероятно IMO) той части скрипта, которая строит cmake-gui, потребуется последняя версия cmake для сборки cmake, но остальная часть сборки была в порядке с версией apt, чтобы точно воспроизвести шаги, которые я сделал здесь, вы можете собрать cmake с версией apt, затем перенастроить с помощью последней собранной версии cmake и снова собрать.