ru:msvc2008
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| ru:msvc2008 [2010/09/08 22:15] – zet | ru:msvc2008 [2024/06/16 11:24] (текущий) – kukuruzo | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | ====== Psi+ on MS Windows: Build Instructions (win32-msvc2008) ====== | + | ====== Psi+ on MS Windows: Build Instructions (win64-msvc2019) ====== |
| - | **// | ||
| - | + | ===== Microsoft Visual Studio | |
| - | ===== Microsoft Visual Studio | + | |
| Строка 10: | Строка 8: | ||
| ==== Необходимый инструментарий ==== | ==== Необходимый инструментарий ==== | ||
| + | Скачиваем исходный код Psi+ из git-репозитория: | ||
| - | + | < | |
| - | Скачиваем исходный код Psi из git-репозитория: | + | git clone https://github.com/psi-plus/psi-plus-snapshots.git |
| - | + | cd psi-plus-snapshots | |
| - | < | + | |
| - | + | ||
| - | git clone git://git.psi-im.org/psi.git | + | |
| - | + | ||
| - | cd psi | + | |
| - | + | ||
| - | git submodule init | + | |
| - | + | ||
| - | git submodule update | + | |
| </ | </ | ||
| Скачиваем: | Скачиваем: | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| - | * [[http:// | ||
| - | * [[http:// | ||
| - | * [[http:// | ||
| - | * [[http:// | ||
| + | ==== Установка Инструментов сборки Psi+ ==== | ||
| + | * Сначала установим CMake при помощи скачанного установщика. Можно пропустить и установить вместе с Qt (// | ||
| + | * Установим **Microsoft Visual Studio 2019 Community Edition** при помощи скачанного online-установщика (~12Гб места на диске) | ||
| + | рекомендуемый набор компонентов для установки показан на рисунке: | ||
| + | {{: | ||
| - | ==== Настройка переменных | + | также можно воспользоваться пунктом импортировать |
| - | + | ||
| - | + | ||
| - | + | ||
| - | В свойствах компьютера (Advanced -> Environment Variables) прописываем следующие | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | * *C: | + | |
| - | + | ||
| - | * *C:\Program Files\Microsoft Visual Studio 9.0\VC\bin* | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Добавляем следующие системные | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | * *QMAKESPEC=win32-msvc2008* | + | |
| - | + | ||
| - | * *QTDIR=C: | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Копируем содержимое директории *C: | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | * *libeay32MD.lib* -> *libeay32.lib* | + | |
| - | + | ||
| - | * *libeay32MDd.lib* -> *libeay32d.lib* | + | |
| - | + | ||
| - | * *ssleay32MD.lib* -> *ssleay32.lib* | + | |
| - | + | ||
| - | * *ssleay32MDd.lib* -> *ssleay32d.lib* | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Выбираем директорию *C: | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | В результате должно | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | ==== Установка Qt ==== | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Скачанный архив *qt-win-opensource-src-4.4.3.zip* распаковываем в директорию *C: | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | === Запуск командой | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Открываем командную строку Visual Studio 2008 Command Prompt: | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | *Start* -> *Programs* -> *Microsoft Visual Studio 2008* -> *Visual Studio Tools* -> *Visual Studio 2008 Command Prompt* | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Для проверки правильности прописанного пути к *nmake.exe* пишем в cmd: | + | |
| < | < | ||
| + | { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | ] | ||
| + | } | ||
| + | </ | ||
| - | C:\Program Files\Microsoft Visual Studio 9.0\VC> | + | * Затем установим необходимый комплект **Qt5** при помощи online-установщика, |
| + | * Устанавливаем библиотеки **Gstreamer** желательно устанавливать в один и тот же каталог и в максимальной конфигурации | ||
| - | + | * И наконец установим **SDK**, который содержит набор библиотек необходимых для сборки Psi+. При установке очень желательно включить пункт " | |
| - | Microsoft (R) Program Maintenance Utility Version 9.00.21022.08 | + | |
| - | + | ||
| - | Copyright (C) Microsoft Corporation. | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Usage: | + | |
| - | + | ||
| - | NMAKE [[options]] [[/ | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Options: | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | /A|Build all evaluated targets | + | |
| - | + | ||
| - | /B Build if time stamps are equal | + | |
| - | + | ||
| - | /C Suppress output messages | + | |
| - | + | ||
| - | /D Display build information | + | |
| - | + | ||
| - | /E Override env-var macros | + | |
| - | + | ||
| - | / | + | |
| - | + | ||
| - | /G Display !include filenames | + | |
| - | + | ||
| - | /HELP Display brief usage message | + | |
| - | + | ||
| - | ........ | + | |
| - | + | ||
| - | </ | + | |
| Строка 162: | Строка 75: | ||
| === Конфигурирование Qt перед сборкой === | === Конфигурирование Qt перед сборкой === | ||
| + | * Нажимаем клавиши **Win+Pause/ | ||
| + | {{: | ||
| - | Для вывода справки по команде *configure.exe* пишем в cmd: | + | * Запускаем **QtCreator**, |
| + | * Убедимся, что QtCreator нашел CMake, если не нашел добавляем его | ||
| - | < | + | {{: |
| - | C:\Qt\4.4.3-msvc> | + | * Проверяем, |
| - | </ | ||
| + | {{: | ||
| - | Для начала процесса | + | * Проверяем наличие необходимых |
| - | < | + | {{: |
| - | C: | ||
| + | * Проверяем наличие необходимого нам профиля Qt (у вас будут свои пути) | ||
| + | {{: | ||
| - | This is the Qt for Windows Open Source Edition. | ||
| + | * Настраиваем среду сборки | ||
| + | {{: | ||
| - | You are licensed to use this software under the terms of | + | |
| - | + | ||
| - | the GNU General Public License (GPL) version 2 or 3. | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Type ' | + | |
| - | + | ||
| - | Type ' | + | |
| - | + | ||
| - | Type ' | + | |
| - | + | ||
| - | Type ' | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Do you accept the terms of the license? | + | |
| - | + | ||
| - | y | + | |
| - | + | ||
| - | </ | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | В результате видим следующее: | + | |
| - | + | ||
| - | < | + | |
| - | + | ||
| - | ........ | + | |
| - | + | ||
| - | Reading C:/ | + | |
| - | + | ||
| - | Reading C:/ | + | |
| - | + | ||
| - | Reading C:/ | + | |
| - | + | ||
| - | Reading C:/ | + | |
| - | + | ||
| - | Reading C:/ | + | |
| - | + | ||
| - | Reading C:/ | + | |
| - | + | ||
| - | Reading C:/ | + | |
| - | + | ||
| - | Reading C:/ | + | |
| - | + | ||
| - | Reading C:/ | + | |
| - | + | ||
| - | Reading C:/ | + | |
| - | + | ||
| - | Reading C:/ | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Qt is now configured for building. Just run nmake. | + | |
| - | + | ||
| - | To reconfigure, | + | |
| - | + | ||
| - | </ | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | ==== Сборка Qt ==== | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Приступаем к сборке Qt. Для этого выполняем команду | + | |
| - | + | ||
| - | < | + | |
| - | + | ||
| - | C: | + | |
| - | + | ||
| - | </ | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Процесс сборки Qt может занять некоторое время (20-60 минут). | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | ==== Применение патчей к исходному коду Psi ==== | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | * Скачиваем патчи для [[http:// | + | |
| - | + | ||
| - | * Скачиваем | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | *_Примечание: | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | * Запускаем *cmd* в директории *psi-git* и последовательно выполняем следующие команды: | + | |
| - | + | ||
| - | < | + | |
| - | + | ||
| - | patch -p1 < 000-about-psi-plus.diff | + | |
| - | + | ||
| - | patch -p1 < 005-psi-win32-pre-patching.diff | + | |
| - | + | ||
| - | patch -p1 < 020-psi-muc-kickban-reasons.diff | + | |
| - | + | ||
| - | patch -p1 < 030-psi-vcard-save.diff | + | |
| - | + | ||
| - | patch -p1 < 040-psi-muc-topic.diff | + | |
| - | + | ||
| - | patch -p1 < 050-psi-quick-disco.diff | + | |
| - | + | ||
| - | patch -p1 < 060-psi-receipts.diff | + | |
| - | + | ||
| - | patch -p1 < 070-psi-muc-user-count.diff | + | |
| - | + | ||
| - | patch -p1 < 080-psi-popup-avatar.diff | + | |
| - | + | ||
| - | patch -p1 < 090-psi-entity-time.diff | + | |
| - | + | ||
| - | patch -p1 < 100-psi-mood-icons.diff | + | |
| - | + | ||
| - | patch -p1 < 110-psi-muc-change-affiliation.diff | + | |
| - | + | ||
| - | patch -p1 < 120-psi-muc-nickclick-chat.diff | + | |
| - | + | ||
| - | patch -p1 < 130-psi-send-button-arrow.diff | + | |
| - | + | ||
| - | patch -p1 < 140-psi-bookmark-skip.diff | + | |
| - | + | ||
| - | patch -p1 < 150-psi-muc-notify-highlight.diff | + | |
| - | + | ||
| - | .............. | + | |
| - | + | ||
| - | </ | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | *_Примечание: | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | ==== Компиляция Psi в командной строке Visual Studio 2008 Command Prompt ==== | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Переходим в директорию *psi-git* с файлами исходного кода Psi и проверяем правильность установки путей и переменных: | + | |
| - | + | ||
| - | < | + | |
| - | + | ||
| - | D: | + | |
| - | + | ||
| - | QMake version 2.01a | + | |
| - | + | ||
| - | Using Qt version 4.4.3 in C: | + | |
| - | + | ||
| - | </ | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | < | + | |
| - | + | ||
| - | D: | + | |
| - | + | ||
| - | win32-msvc2008 | + | |
| - | + | ||
| - | </ | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | После этого выполняем последовательно следующие команды: | + | |
| - | + | ||
| - | < | + | |
| - | + | ||
| - | D: | + | |
| - | + | ||
| - | </ | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Затем: | + | |
| - | + | ||
| - | < | + | |
| - | + | ||
| - | D: | + | |
| - | + | ||
| - | </ | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | После окончание процесса компиляции видим собранное приложение в *D: | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | ==== Создание проекта psi.vcproj для Microsoft Visual Studio 2008 ==== | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Переходим в директорию *psi-git/ | + | |
| - | + | ||
| - | < | + | |
| - | + | ||
| - | D: | + | |
| - | + | ||
| - | </ | + | |
| + | {{: | ||
| + | * Дополнительно настраиваем флаги CMake по-умолчанию: | ||
| - | После выполнения данной команды в этой же директории видим файл *psi.vcproj*. | + | {{: |
| + | ==== Компиляция Psi в программе QtCreator ==== | ||
| - | Открываем файл *psi.vcproj* в Microsoft Visual Studio 2008. | + | * Запускаем **QtCreator**, |
| + | * Открываем файл **CMakeLists.txt** из корневого каталога со скачанными исходными кодами Psi+ | ||
| + | * Настраиваем проект | ||
| + | {{: | ||
| + | Можем включать / выключать необходимые типы сборки, | ||
| - | Переключаемся на конфигурацию *Release*, сохраняем *psi.sln* и выполняем команду *Build*. | + | {{: |
| + | * После настройки проекта начнется предварительное конфигурирование проекта результаты которого будут представлены на вкладке **Основные сообщения** | ||
| + | * Заходим в опции проекта и выбираем необходимые нам флаги конфигурации (не забываем нажимать **Применить**). Рекомендуемые мною настройки: | ||
| + | * Обязательно включаем флаг DEV_MODE если необходим запуск Psi+ прямо из QtCreator | ||
| + | * Добавляем следующие этапы сборки: | ||
| + | {{: | ||
| - | *_Примечание_*: при возникновении проблем с компиляцией qca-файлов необходимо в директории *psi-git/ | + | |
| + | * Если все прошло успешно - запускаем сборку по **Ctrl+B** | ||
| + | * Сборка займет некоторое время и если пройдет успешно, | ||
| + | * Если что-то пошло не так, то сначала убедитесь, | ||
| + | * Описание флагов конфигурации смотрим [[https:// | ||
| + | * Сборка SDK своими руками в этом разделе не описана, | ||
| + | **==== | ||
| + | ПРИМЕЧАНИЯ ====** | ||
| + | 1. Для ускорения сборки под Windows можно воспользоваться утилитой [[https:// | ||
| + | 2. Если у вас что-то не получается - внимательно читайте вывод CMake, cmake-скрипты Psi/Psi+ выдают достаточно подробную информацию о процессе конфигурации. | ||
ru/msvc2008.1283984151.txt.gz · Последнее изменение: 2010/10/17 15:36 (внешнее изменение)
