qmake: tidak dapat menemukan instalasi Qt ''

139

Saya memiliki perangkat lunak di ubuntu yang mengharuskan saya menjalankan qmake untuk menghasilkan Makefile.

Namun, menjalankan qmake mengembalikan kesalahan ini,

qmake: could not find a Qt installation of ''

Saya telah menginstal apa yang saya pikir sebagai paket yang diperlukan menggunakan,

sudo apt-get install qt4-qmake
sudo apt-get install qt5-qmake

Tapi kesalahan itu tidak hilang.

Bantuan apa pun dalam hal ini akan sangat dihargai!

Ingin tahu
sumber
6
Coba lari sudo apt-get install qtcreator. Ini menginstal Qt SDK lengkap + IDE. Itu harus menambahkan semua yang Anda butuhkan.
sashoalm
Hai @sashoalm, terima kasih banyak, sepertinya ada paket lain yang hilang. Sekarang berfungsi: D
Curious
6
Ini bukan solusi yang baik karena akan menginstal banyak paket yang mungkin tidak dibutuhkan.
Scone

Jawaban:

186

sudo apt-get install qt5-default bekerja untuk saya.

$ aptitude show qt5-default
mengatakan itu

Paket ini menetapkan Qt 5 menjadi versi Qt default untuk digunakan saat menggunakan binari pengembangan seperti qmake. Ini menyediakan konfigurasi default untuk qtchooser, tetapi tidak mencegah instalasi Qt alternatif digunakan.

ptmono
sumber
1
Bisakah Anda lebih menjelaskan solusi Anda?
pengguna35443
3
jawaban yang diterima bukanlah jawaban sama sekali. Yang ini harus menjadi jawaban yang diterima.
thias
Berikut ini mengatur instalasi pengembangan qt5 lengkap untuk saya: apt-get install qt5base-dev qtdeclarative5-dev qt5-qmake qt5-default qttools5-dev-tools Dan kemudian periksa menggunakan: qtchooser -print-env
Salil
30

Anda dapat memeriksa jalur ke qmake menggunakan which qmake.

Pertimbangkan untuk menginstal qt4-defaultatau qt5-defaulttergantung versi qt apa yang ingin Anda gunakan.

Anda juga dapat menggunakan qtchooser - pembungkus yang digunakan untuk memilih antara versi biner pengembangan Qt.

jtomaszk.dll
sumber
2
Hai @ Warthel4578, terima kasih, jawaban Anda membantu saya secara tidak langsung, karena saya menginstal qt4-qmake, saya seharusnya memanggil 'qt4-qmake' daripada 'qmake' (Saya menemukan keduanya di jalur direktori). Sekarang berfungsi :)
Curious
Terima kasih Warthel, ini membantu saya menemukan mengapa qmake saya tidak berfungsi. qmake di Ubuntu 14.04 ditautkan ke qtchooser
Scone
Saya mendapatkan jawaban SO ini, kemudian menemukan, berdasarkan kesalahan berikutnya ( no qtwebkit installation found) bahwa saya juga harus menjalankan apt-get install qt5-default libqt5webkit5-dev gstreamer1.0-plugins-base gstreamer1.0-tools gstreamer1.0-xseperti yang dijelaskan di halaman wiki Thoughtbot Github
sameers
16

Untuk orang lain dalam situasi saya, solusinya adalah:

qmake -qt=qt5

Ini ada di Ubuntu 14.04 setelah menginstal qt5-qmake. qmake adalah symlink ke qtchooser yang menggunakan argumen -qt.

Scone
sumber
8

Sebagai pengelola Debian Qt, izinkan saya menyarankan Anda untuk tidak menggunakan qtx-default. Silakan baca halaman manual qtchooser, solusinya dijelaskan di sana. Jika Anda tertarik untuk mengemas aplikasi, Anda juga dapat melihat posting blog yang saya buat menjelaskan cara melakukannya

lisandro
sumber
5
Bisakah Anda menjelaskan mengapa kita sebaiknya tidak menggunakan qtx-default? Halaman manual qtchooser membantu saya memahami apa yang sedang terjadi, tetapi saya tidak mengerti mengapa memiliki paket yang menyediakan default menjadi masalah.
Robie Basak
2
Akan lebih baik jika qmake-qtX dibundel dengan versi qt yang relevan. Menarik potongan-potongan ini agak merepotkan.
Xofo
Hal yang pasti @RobieBasak: katakanlah Anda menginstal qt5-default. Kemudian Anda menjalankan aplikasi qt4 yang memanggil qdbus. Anda mendapatkan qdbus qt5, yang seharusnya berfungsi tetapi tidak dijamin untuk melakukannya.
lisandro
1
Tentunya itu adalah bug dalam cara aplikasi qt4 memanggil qdbus atau di lingkungan tempat aplikasi qt4 dijalankan, daripada pilihan saya untuk menginginkan qt5 secara default dari CLI saya?
Robie Basak
Hal pertama: mungkin qdbus adalah contoh yang buruk. Katakanlah upstream memutuskan untuk tidak mengganti nama alat yang mendasari Qt dengan perubahan 4 menjadi 5. Jadi tidak mungkin untuk mengetahui sebelumnya versi mana aplikasi akan berjalan kecuali Anda memiliki qtchooser di tengahnya. Tapi qtchooser, meskipun itu upaya yang bagus, gagal di sejumlah tempat, setidaknya di dunia distro. Idealnya setiap aplikasi harus dipanggil kembali setelah versi utama atau kompatibilitas harus dipertahankan.
lisandro
8

Saya mengalami masalah ini membuat permata Ruby jasmine-headless-webkit. Meskipun qt4 telah diinstal, qmake(sebuah symlink ke qtchooser) bersikeras bahwa ia tidak mengetahui tentang instalasi QT. OTOH, itu bisa mendaftar qt4 ketika ditanya secara langsung.

Ini membuat segalanya lebih baik:

export QT_SELECT=qt4

qtchooser kemudian tahu cara menggunakan qmake-qt4, dan seterusnya.

Barry Kelly
sumber
Sempurna! Saya memiliki masalah yang sama ketika mencoba menginstal qBittorrent, dan masalah saya teratasi export QT_QMAKE=/usr/bin. Tidak pernah tahu kapan variabel lingkungan itu akan kembali menggigit ya!
Alex Ryan
4

Cari di mana qmake-qt4 :

which qmake-qt4

Misalnya qmake-qt4 ada di jalur ini:

/usr/bin/qmake-qt4

Buat tautan simbolis:

cd /usr/local/sbin/
ln -s /usr/bin/qmake-qt4 .
mv qmake-qt4 qmake

Salam

Alvaro Gonzalez
sumber
Ini adalah solusi yang bagus ketika Anda hanya ingin qmakedan tidak menginginkan lingkungan qt penuh.
Tom Saleeba
1

Saya telah menginstal qt4. Saya menemukan bahwa menggunakan jalur berikut berhasil untuk saya, meskipun 'yang qmake' mengembalikan / usr / bin / qmake, yang bagaimanapun juga hanya tautan ke qtchooser.

Jalur berikut berfungsi untuk saya, pada sistem 64 bit. Berjalan dari jalur lengkap:

/usr/lib/x86_64-linux-gnu/qt4/bin/qmake
kristianp
sumber
Dari semua jawaban ini sebenarnya satu-satunya yang berfungsi dari jarak jauh. Kecuali saya perlu menggunakan /usr/lib/x86_64-linux-gnu/qt5/bin/qmake.
Akito
1
  • Instal qt menggunakan:

    sudo apt install qt5-qmake
    
  • Buka ~/.bashrcfile:

    vim ~/.bashrc
    
  • Menambahkan jalur di bawah ini ke ~/.bashrcfile:

    export PATH="/opt/Qt/5.15.1/gcc_64/bin/:$PATH"
    
  • Jalankan / muat ~/.bashrcfile di shell Anda saat ini

    source ~/.bashrc`
    
  • Coba sekarang qmakedengan menggunakan perintah versi di bawah ini:

    qmake --version
    
Saïd BENAISSA
sumber
0

Tautan simbolis ke versi yang diinginkan, didefinisikan secara global:

sudo ln -s /usr/bin/qmake-qt5 /usr/bin/qmake

... atau per pengguna:

sudo ln -s /usr/bin/qmake-qt5 /home/USERNAME/.local/bin/qmake

... untuk melihat apakah itu berhasil:

qmake --version
Martin Zeitler
sumber
bagaimana menambahkan komentar, mengapa jawaban ini tidak disukai? gagal untuk memahami atau menerapkan solusi tidak secara tepat memenuhi syarat sebagai alasan yang valid ... sementara saya cukup yakin itu berhasil, karena saya memilikinya bekerja seperti itu.
Martin Zeitler
1
Melempar upvote Anda karena saya bukan apt-get tard, dan saya sebenarnya membangun dari sumber, dan jawaban symlink ini adalah penutupan untuk membawa saya ke jalurnya karena saya lupa saya telah menggunakan alias 'qmake' saya. Terima kasih.
While-E
0

Untuk Qt 5.7 saya, buka QtCreator, buka Alat -> Opsi -> Bangun & Jalankan -> Versi Qt memberi saya lokasi qmake.

mihota
sumber
0

jika asisten dijalankan dari terminal secara langsung, itu akan menggunakan jalur default, biasanya adalah / usr / bin / asisten. Saya memiliki situasi yang sama, untuk membuatnya berfungsi, yang harus saya lakukan adalah menemukan instalasi sebenarnya dari jalur bin instalasi qt saya, seperti xxx / Qt5.13.2 / 5.13.2 / gcc_64 / bin /, ketik xxx / Qt5.13.2 /5.13.2/gcc_64/bin/assisstant langsung dari terminal

jc_allen
sumber