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 (внешнее изменение)