Ini belum tentu spesifik Unix / Linux, jadi Anda mungkin lebih baik menanyakan ini di Stack Overflow. Namun demikian, QtCreator biasanya cukup baik dalam mendeteksi instalasi Qt alternatif, cukup buat proyek baru dan lihat di bawah Projects
tab di sebelah kiri. Anda dapat mengatur konfigurasi bangunan yang berbeda di sana. Harus ada kotak drop down untuk memilih dari berbagai versi yang diinstal untuk setiap konfigurasi.
Kalau tidak, tampaknya QTDIR
variabel lingkungan digunakan untuk mengatur versi Qt. Secara default QtCreator menetapkan ini /usr/share/qt4
untuk saya, jadi menyetelnya ke jalur yang setara (yaitu yang ada di mana file konfigurasi) harus membuat qmake build dengan versi yang berbeda. Anda dapat menguji dengan sesuatu seperti:
QTDIR=/usr/share/qtX qmake --version
Dimungkinkan juga untuk mengatur ini dalam .pro
file, tetapi jika demikian itu tidak berdokumen (seperti dengan cukup banyak qmake
variabel).
Juga, jika Anda ingin membangun dengan versi utama tertentu, qmake
biasanya hanya disinkronkan ke biner untuk versi utama default. Binari sebenarnya qmake-qt4
, qmake-qt5
dll. Juga lihat man qtchooser
dan qtX-default
paket pada sistem berbasis Debian.
Memperbarui
Ada bug qtchooser
di Ubuntu 13.04 dan 13.10 yang tampaknya memengaruhi cara aplikasi Qt mendeteksi berbagai versi Qt, lihat https://bugs.launchpad.net/ubuntu/+source/qt4-x11/+bug/1177823 . Ini juga dapat mempengaruhi QtCreator.
Ini membantu saya menggunakan
-qt=qt5
switch atauQT_SELECT=qt5
variabel lingkungan.sumber
Ada metode yang lebih baik .
Jika Anda ingin membuat perubahan Anda permanen, Anda perlu memodifikasi
/usr/lib/x86_64-linux-gnu/qt-default/qtchooser/default.conf
file, yang merupakan symlink ke../../../../share/qtchooser/qt4-x86_64-linux-gnu.conf
.Ini adalah contoh untuk sistem saya (Ubuntu 17.10 x64, Qt 5.10.1). Saya akan menyarankan untuk menyimpan file symlink asli dan targetnya di tempat (jika Anda ingin memulihkan konfigurasi asli). Dan juga membuat file baru di lokasi default (untuk konsistensi). Jadi inilah langkah-langkahnya:
Ganti nama file symlink:
Buat file konfigurasi target baru (dengan nama apa pun):
File ini harus berisi dua baris: baris pertama adalah path ke binari Qt (termasuk qmake) dan yang kedua adalah path ke perpustakaan Qt (termasuk file .so). Dalam kasus saya itu
Simpan dan tutup. Buat symlink
default.conf
ke file konfigurasi baru:Periksa versi Qt Anda:
Sekarang harus selalu menggunakan versi yang ditentukan.
sumber
Di bawah beberapa distro seperti Debian Jessie Stable Anda dapat melakukan yang berikut:
Dan cukup pilih versi yang Anda butuhkan jika perlu diubah lagi jalankan saja baris ketiga.
sumber
Banyak jawaban di atas akan berfungsi. Namun saya secara pribadi menemukan bahwa tidak ada yang gigih. Misalnya saya dapat menjalankan perintah ini:
Tetapi jika saya membuka terminal baru dan memeriksa versi Qt, itu akan kembali ke default, dan jika Anda memiliki beberapa versi Qt yang terinstal, default mungkin bukan yang Anda inginkan. Anda dapat mengetahui dengan menjalankan perintah ini:
Satu-satunya cara untuk membuat perubahan Anda tetap adalah dengan mengubah versi default. Untuk melakukan ini, edit
/usr/lib/x86_64-linux-gnu/qtchooser/default.conf
dan ubah baris ini:Di mana Anda mengubah
qt5
ke versi apa pun yang Anda inginkan. Anda dapat menggunakan perintahqtchooser -list-versions
untuk melihat versi apa yang diinstal pada mesin Anda.sumber
qmake
(/usr/bin/qmake
) sebenarnya hanyalah symlink keqtchooser
(/usr/bin/qtchooser
).Ini kutipan dari
man qtchooser
:File
/etc/xdg/qtchooser/default.conf
memiliki prioritas lebih tinggi daripada/usr/lib/x86_64-linux-gnu/qt-default/qtchooser/default.conf
. Berikut adalah langkah-langkah bagaimana memilih versi Qt default untukqmake
contoh sistem saya (Ubuntu 17.10 x64, Qt 5.10.1).Buat
/etc/xdg/qtchooser
direktori:Buat dan edit file konfigurasi:
Seperti dikatakan di atas. file ini harus mengandung dua baris: baris pertama adalah path ke binari Qt (termasuk qmake) dan yang kedua adalah path ke pustaka Qt (termasuk file .so). Dalam kasus saya ini adalah:
Simpan dan tutup. Sekarang
qmake
harus menggunakan versi Qt yang ditentukan.sumber
Jika Anda ingin
qt5
, untukqt4
digunakan:sumber
Dalam pengaturan default (saya) pada Fedora 23 yang memiliki keduanya
qt-3.3.8
danqt-4.8.5
lingkungan, juga perlu menambahkan/usr/libxx/qt4/bin/
direktori sementaraPATH
untuk mengizinkancmake
/qmake
paket untuk menemukan versi yang tepat. Ini diperlukan saat membuat kode, bukan saat menjalankan aplikasi QT4 yang selesai.Untuk beberapa alasan jalur QT3 sudah dipasang di sana secara permanen dan sayangnya pada awal
PATH
, yang mencegah pemilih versi QT bekerja dengan baik.sumber