Bagaimana cara membangun cmake-gui di Linux dari sumber?

Jawaban:

6

Dua opsi di sini:

  • cmake-guidikemas sebagai cmake-qt-gui . Instal dengan:

    sudo apt-get install cmake-qt-gui
    
  • Jika Anda benar-benar perlu membuatnya dari sumber, lakukan hal berikut:

    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
    
N0rbert
sumber
2
Tidak, paket berisi cmake yang sudah ketinggalan zaman, yang tidak mendukung peningkatan 1,66 misalnya ...
stiv
5
Menginstal cmake-qt-guidengan apt setelah dikompilasi cmakedari sumber akan menyebabkan jenis kesalahan berikut: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.
sk
2

Tidak ada yang lain tergantung pada cmake (mungkin) jadi simpul daun. Hapus instalan deb. Dapatkan sumber terbaru dari https://cmake.org/ dan bongkar tarball di suatu tempat, masuk ke dalamnya

./bootstrap --qt-gui
make
make install

Dengan asumsi Anda memiliki item dev QT diinstal. Anda berakhir dengan cmake-command baris perintah biasa dan cmake-qui. Mulai dari baris perintah dengan mengetikkan cmake atau cmake-gui, saya tidak tahu tentang menambahkan ke menu.

Alan Corey
sumber
0

Proses

  • Dalam proses khusus ini saya memutuskan untuk mengkonfigurasi versi terbaru cmake, dengan versi apt dari cmake (maaf jika ini membingungkan).

  • cmake-gui dikompilasi dengan repositori yang sama dengan alat baris perintah cmake, tetapi konfigurasi build default untuk cmake tidak diatur untuk membangun cmake-gui (baik antarmuka kutukan atau antarmuka Qt).

  • Untuk membangun cmake dengan cmake-gui, Anda perlu mengatur beberapa variabel di skrip build cmake. Anda biasanya dapat melakukan ini melalui UI, tetapi juga memungkinkan untuk mengatur variabel-variabel ini dengan secara manual mengedit CMakeCache.txt di direktori build, yang akan saya tunjukkan bagaimana melakukannya dalam jawaban ini.

  • CMake membutuhkan Qt, tetapi tidak dapat menemukannya secara otomatis, salah satu hal yang perlu kita lakukan adalah menunjukkan di mana skrip Qt CMake berada.

1. Instal Qt (jika Anda belum memilikinya)

  • Unduh penginstal dari situs web Qt . Dalam kasus saya, saya memilih versi terbaru dari 5.12 (pada saat penulisan, 5.12.7) dan saya menginstalnya dengan semua pengaturan default.

  • Anda harus membuat akun dengan Qt untuk mengunduh pemasang menggunakan metode ini; akun ini gratis untuk pengguna open source (jika Anda menggunakan ini hanya untuk membangun cmake untuk penggunaan Anda sendiri; jika Anda berencana menggunakan Qt untuk hal lain, Anda harus memverifikasi jika Anda dapat menggunakan versi ini).

  • Saya menginstal Qt ke folder bernama Qt di direktori home saya.

  • Proses instalasi ini akan memakan waktu cukup lama.

  • Saya pikir Qt mungkin tersedia melalui apt, tetapi untuk tujuan saya, saya memerlukan unduhan lengkap untuk proyek lain, jadi saya tetap memilikinya di sini.

2. git mengkloning sumber cmake dari repositori git mereka ke suatu tempat (misalnya, direktori home Anda).

git clone https://gitlab.kitware.com/cmake/cmake.git

3. Buat direktori build

cd cmake
mkdir build
cd build
cmake ..

Itu akan, antara lain, menempatkan file bernama CMakeCache.txt di folder build Anda.

4. Edit CMakeCache.txt untuk mengkonfigurasi ui

  • Buka file ini di editor teks Anda, dan edit baris berikut untuk mengaktifkan qt ui (saya menemukan ini dengan mencari qt).

  • Perhatikan bahwa Anda perlu mengganti PATH_TO_QT dengan tempat direktori qt Anda, dalam kasus saya PATH_TO_QT hanya / home / myname / Qt.

  • Saya akan menyarankan agar tidak menggunakan jalur relatif atau ~.
//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

5. Jalankan kembali cmake .. di direktori build

cmake ..

6. Kompilasi cmake (dalam direktori build)

Di mana N adalah jumlah core yang ingin Anda kompilasi, dalam kasus saya saya ketikkan make -j10.

make -jN

7. Pasang cmake bawaan

  • Anda mungkin tergoda untuk menghapus versi apt cmake sebelum melakukan ini, tetapi tampaknya (karena alasan tertentu), bagian instal dari cmake memerlukan cmake yang harus diinstal untuk ... menginstal cmake.
sudo make install

8. Operasi terakhir

  • sudo make install tidak menggantikan versi cmake yang disimpan di / usr / bin, sayangnya.

  • Mungkin ada cara yang lebih bersih untuk mencapai langkah ini.

  • Gunakan cmake --versionuntuk memverifikasi jika Anda perlu melakukan ini, jika itu memberikan versi yang datang dengan apt (untuk saya pada saat penulisan, 3.10.2), Anda harus melakukan ini.

  • Anda juga harus memverifikasi bahwa versi cmake Anda ada di / usr / local / bin /

Saya perlu melakukan hal berikut:

Ganti nama biner cmake yang terinstal

sudo mv /usr/bin/cmake /usr/bin/cmake_old

Tautkan versi buatan cmake kami ke / usr / bin /

sudo ln -s /usr/local/bin/cmake /usr/bin/cmake
  • Saya tidak berharap perlu menautkan versi baru cmake ke / usr / bin /, karena / usr / local / bin harus di PATH; untuk beberapa alasan, ia hanya akan mencari cmake di / usr / bin, dan memberi saya kesalahan dengan mengatakan bahwa / usr / bin / cmake tidak ditemukan walaupun versi terbaru dari cmake tersedia di / usr / local / bin.

  • Saya kira itu mungkin bahwa reset bash atau reboot bisa memperbaiki kebutuhan untuk menghubungkan, tetapi saya tidak yakin.

Ketik cmake-guiuntuk memulai UI

Tangkapan layar cmake-gui

Keren!

Catatan

  • Diuji pada Ubuntu Mate 18.04.1 x86_64
  • Cmake versi yang saya coba instal: commit ini , tidak ada signifikansi khusus untuk ini, saya baru saja mengkloning yang terbaru.

  • Saya berpendapat bahwa metode ini akan berfungsi jika Anda menggunakan versi cmake yang tepat untuk mengonfigurasi versi terbaru cmake selama seluruh proses ini. Jika ini tidak berhasil, beri tahu saya di komentar.

  • Dalam kasus saya (seperti OP), saya ingin kembali dan membangun cmake-gui setelah menginstal bangunan versi cmake terbaru dari sumber.
  • Dengan demikian, dalam kesempatan (IMO tidak mungkin) bahwa bagian dari skrip yang membangun cmake-gui membutuhkan versi terbaru cmake untuk membangun cmake, tetapi sisa build itu OK dengan versi apt, untuk persis meniru langkah-langkah yang saya lakukan. di sini, Anda bisa membangun cmake dengan versi apt, lalu mengkonfigurasi ulang dengan versi dibangun terbaru cmake, dan membangun lagi.
jrh
sumber
Tidak ada petunjuk bahasa cmake , saya menggunakan menyoroti C. Saya kira itu lebih baik daripada tidak sama sekali.
jrh