Захотел старый проект собрать под qt 4.8.5 для linux. Но не получается это сделать(Далее объясню в чем проблема). Хотелось бы составить подробную инструкцию как это сделать - может не только мне пригодится.
Установленная система: Linux Mint 16 KDE x32.
Установлены пакеты: build-essential
Также установил SDK: Qt 5.2.1 for Linux 32bit
Итак скачал исходники qt 4.8.5 для линукс c
сайта.
Распаковал их с помощью архиватора Ark.
Нашел описание
как это сделать .
Там описываются 2 способа как это сделать:
1) установка в /usr
2) установка в /opt/qt-4.8.5
Мне больше подходит 2 способ чтобы на компьютере можно было устанавливать несколько разных версий qt.
Вначале установил нужные зависимости для сборки qt c помощью команды в терминале.
sudo apt-get install libfontconfig1-dev libfreetype6-dev libx11-dev libxcursor-dev libxext-dev libxfixes-dev libxft-dev libxi-dev libxrandr-dev libxrender-dev
Потом выполнил следующий код в терминале:
sed -i -e "/#if/d" -e "/#error/d" -e "/#endif/d" \
config.tests/unix/libmng/libmng.cpp &&
sed -i '/CONFIG -/ a\isEmpty(OUTPUT_DIR): OUTPUT_DIR = ../..' \
src/3rdparty/webkit/Source/WebKit2/DerivedSources.pro &&
export QTDIR=/opt/qt-4.8.5
После чего выполнил команду
./configure -prefix $QTDIR -sysconfdir /etc/xdg -confirm-license -opensource -release -nomake demos -nomake examples -no-webkit
make
sudo make install
В QtCreator-e в меню "Инструменты->Параметры->Сборка и запуск->Профили Qt " добавляю новый профиль. Для этого нахожу qmake в папке /opt/qt-4.8.5/bin и жму кнопку "Открыть". И даю название профилю "Qt 4.8.5".
После в меню "Инструменты->Параметры->Сборка и запуск->Комплекты" добавляю профиль "Qt.4.8.5".
Запускаю проект в QtCreatore 3.0.1. и настраиваю на сбоку на Qt 4.8.5.
Сборка проходит нормально но при запуске приложения выдается сообщение с ошибкой:
Cannot mix incompatible Qt library (version 0x40804) with this library (version 0x40805).
Понимаю что версии Qt разные - в системе используется Qt 4.08.04 а я программа скомпилирована под Qt 4.08.05. Но как разрешить эту проблему?