Инструменты пользователя

Инструменты сайта


ru:msvc2008

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
ru:msvc2008 [2010/09/05 23:21] – внешнее изменение 127.0.0.1ru:msvc2008 [2024/06/16 11:24] (текущий) kukuruzo
Строка 1: Строка 1:
-#summary|Psi+ on MS Windows: Build Instructions (win32-msvc2008) +====== Psi+ on MS Windows: Build Instructions (win64-msvc2019======
-#labels Windows,Phase-Implementation+
  
-= Устаревшая статья = 
  
 +===== Microsoft Visual Studio 2019 =====
  
-= Microsoft Visual Studio 2008 (НЕ РЕКОМЕНДУЕТСЯ) = 
  
-== Необходимый инструментарий == 
  
-Скачиваем исходный код Psi из git-репозитория: +==== Необходимый инструментарий ====
-<code> +
-git clone git://git.psi-im.org/psi.git +
-cd psi +
-git submodule init +
-git submodule update +
-</code> +
-Скачиваем:+
  
-  * [[http://www.microsoft.com/express/download/|Microsoft Visual Studio 2008 Express Editions]] +Скачиваем исходный код Psiиз git-репозитория:
-  * [[http://www.microsoft.com/downloads/details.aspx?FamilyId=F26B1AA4-741A-433A-9BE5-FA919850BDBF&displaylang=en|Windows SDK for Windows Server 2008 and .NET Framework 3.5]] +
-  * [[http://www.qtsoftware.com/downloads/opensource/appdev/windows-cpp|Qt for Open Source C++ development on Windows]] (ftp://ftp.trolltech.no/qt/source/qt-win-opensource-src-4.4.3.zip) +
-  * [[http://www.slproweb.com/products/Win32OpenSSL.html|Win32 OpenSSL]] (full version)+
  
 +<code bash>
 +git clone https://github.com/psi-plus/psi-plus-snapshots.git
 +cd psi-plus-snapshots
 +</code>
  
-== Настройка переменных окружения и необходимых библиотек ==+Скачиваем:
  
-В свойствах компьютера (Advanced -> Environment Variables) прописываем следующие пути (переменная Path):+  * [[https://cmake.org/download/|CMake ]] Можно использовать тот, что идет в комплекте с Qt 
 +  * [[https://my.visualstudio.com/Downloads?q=visual%20studio%202019&wt.mc_id=o~msft~vscom~older-downloads|Microsoft Visual Studio 2019]] 
 +  * [[https://www.qt.io/download-open-source?hsCtaTracking=9f6a2170-a938-42df-a8e2-a9f0b1d6cdce%7C6cb0de4f-9bb5-4778-ab02-bfb62735f3e5|Qt Online Installer Windows]] (требует регистрации на сайте) 
 +  * [[https://gstreamer.freedesktop.org/data/pkg/windows/1.24.4/msvc/gstreamer-1.0-msvc-x86_64-1.24.4.msi|Gstreamer runtime libraries 1.24.4]] 
 +  * [[https://gstreamer.freedesktop.org/data/pkg/windows/1.24.4/msvc/gstreamer-1.0-devel-msvc-x86_64-1.24.4.msi|Gstreamer development libraries 1.24.4]] 
 +  * [[https://sourceforge.net/projects/psiplus/files/Windows/Personal-Builds/KukuRuzo/SDK/psisdk-msvc2019-setup-35.0.exe/download|Psi+ Qt5 SDK MSVC2019 Win64]] (СДК для сборки Psi+ //~30Мб//)
  
-  * *C:\Qt\4.4.3-msvc\bin* 
-  * *C:\Program Files\Microsoft Visual Studio 9.0\VC\bin* 
  
-Добавляем следующие системные переменные: 
  
-  * *QMAKESPEC=win32-msvc2008* 
-  * *QTDIR=C:\Qt\4.4.3-msvc* 
  
-Копируем содержимое директории *C:\OpenSSL\lib\VC* в директорию *C:\Program Files\Microsoft Visual Studio 9.0\VC\lib* и переименовываем следующие файлы: 
  
-  * *libeay32MD.lib* -> *libeay32.lib* 
-  * *libeay32MDd.lib* -> *libeay32d.lib* 
-  * *ssleay32MD.lib* -> *ssleay32.lib* 
-  * *ssleay32MDd.lib* -> *ssleay32d.lib* 
  
-Выбираем директорию *C:\OpenSSL\include\openssl*  и копируем всю директорию *openssl* в *C:\Program Files\Microsoft Visual Studio 9.0\VC\include* +==== Установка Инструментов сборки Psi+ ====
  
-В результате должно получиться так *C:\Program Files\Microsoft Visual Studio 9.0\VC\include\openssl*+  * Сначала установим CMake при помощи скачанного установщика. Можно пропустить и установить вместе с Qt (//желательно ставить в каталог ближе к корню диска, например C:\cmake и добавить путь к CMake в PATH по просьбе установщика//
 +  * Установим **Microsoft Visual Studio 2019 Community Edition** при помощи скачанного online-установщика (~12Гб места на диске)
  
 +рекомендуемый набор компонентов для установки показан на рисунке:
  
-== Установка Qt ==+{{:ru:msvc2019_setup.png?1200|}}
  
-Скачанный архив *qt-win-opensource-src-4.4.3.zip* распаковываем в директорию *C:\Qt\4.4.3-msvc*+также можно воспользоваться пунктом импортировать конфигурацию, для этого нужно создать текстовый файл со следующим содержимым: 
 +<code> 
 +
 +  "version": "1.0", 
 +  "components":
 +    "Microsoft.VisualStudio.Component.CoreEditor", 
 +    "Microsoft.VisualStudio.Workload.CoreEditor", 
 +    "Microsoft.VisualStudio.Component.Roslyn.Compiler", 
 +    "Microsoft.Component.MSBuild", 
 +    "Microsoft.VisualStudio.Component.TextTemplating", 
 +    "Microsoft.VisualStudio.Component.Debugger.JustInTime", 
 +    "Microsoft.VisualStudio.Component.VC.CoreIde", 
 +    "Microsoft.VisualStudio.Component.Windows10SDK", 
 +    "Microsoft.VisualStudio.Component.VC.Tools.x86.x64", 
 +    "Microsoft.VisualStudio.Component.Windows10SDK.19041", 
 +    "Component.CPython3.x64", 
 +    "Microsoft.VisualStudio.Component.VC.Redist.14.Latest", 
 +    "Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Core", 
 +    "Microsoft.VisualStudio.Component.VC.ATL", 
 +    "Microsoft.VisualStudio.Component.VC.ASAN", 
 +    "Microsoft.VisualStudio.Component.VC.Modules.x86.x64", 
 +    "Microsoft.VisualStudio.Workload.NativeDesktop" 
 +  ] 
 +
 +</code>
  
 +  * Затем установим необходимый комплект **Qt5** при помощи online-установщика, где выбираем Qt-5.15.2 MSVC2019 64bit (рекомендуется для SDK v29.0 в Tools выбираем CDB и убеждаемся, что выбран QtCreator (установленный комплект занимает около 7Гб)
  
-== Запуск командой строки Visual Studio 2008 Command Prompt ==+  * Устанавливаем библиотеки **Gstreamer** желательно устанавливать в один и тот же каталог и в максимальной конфигурации
  
-Открываем командную строку Visual Studio 2008 Command Prompt:+  * И наконец установим **SDK**, который содержит набор библиотек необходимых для сборки Psi+. При установке очень желательно включить пункт "Добавить запись в реестр Windows". **Поле установки нужно перезайти в систему, чтобы обновились переменные.**
  
-*Start* -> *Programs* -> *Microsoft Visual Studio 2008* -> *Visual Studio Tools* -> *Visual Studio 2008 Command Prompt* 
  
-Для проверки правильности прописанного пути к *nmake.exe* пишем в cmd:  
-<code> 
-C:\Program Files\Microsoft Visual Studio 9.0\VC>nmake /? 
  
-Microsoft (R) Program Maintenance Utility Version 9.00.21022.08 
-Copyright (C) Microsoft Corporation.  All rights reserved. 
  
-Usage:  NMAKE @commandfile +=== Конфигурирование Qt перед сборкой ===
-        NMAKE [[options]] [[/f|makefile]] [[/x|stderrfile]] [[macrodefs]] [[targets]]+
  
-Options:+  * Нажимаем клавиши **Win+Pause/Break** и слева выбираем пункт Дополнительные параметры, в появившемся окне выбираем **Переменные среды** и в новом окне убеждаемся в наличии переменных**GSREAMER_1_0_ROOT_x86_64** и **PSI_SDK_MSVC_WIN64**
  
-/A|Build all evaluated targets +{{:ru:env-vars.png|}}
-/B Build if time stamps are equal +
-/C Suppress output messages +
-/D Display build information +
-/E Override env-var macros +
-/ERRORREPORT:{NONE|PROMPT|QUEUE|SENDReport errors to Microsoft +
-/G Display !include filenames +
-/HELP Display brief usage message +
-........ +
-</code>+
  
 +  * Запускаем **QtCreator**, там в меню **Инструменты** выбираем **Параметры**
 +  * Убедимся, что QtCreator нашел CMake, если не нашел добавляем его вручную
  
-== Конфигурирование Qt перед сборкой ==+{{:ru:cmake-config.png|}}
  
-Для вывода справки по команде *configure.exe* пишем в cmd: +  * Проверяем, что QtCreator нашел необходимые дебаггеры, если нужного нет - добавляем сами:
-<code> +
-C:\Qt\4.4.3-msvc>configure.exe -help +
-</code>+
  
-Для начала процесса конфигурирования Qt пишем: 
-<code> 
-C:\Qt\4.4.3-msvc>configure -debug-and-release 
  
-This is the Qt for Windows Open Source Edition.+{{:ru:cdb-config.png|}}
  
-You are licensed to use this software under the terms of 
-the GNU General Public License (GPL) version 2 or 3. 
  
-Type '2' to view the GNU General Public License version 2 (GPLv2). +  * Проверяем наличие необходимых компиляторов
-Type '3' to view the GNU General Public License version 3 (GPLv3). +
-Type 'y' to accept this license offer. +
-Type 'n' to decline this license offer.+
  
-Do you accept the terms of the license? +{{:ru:creator-compilers.png|}}
-+
-</code>+
  
-В результате видим следующее: 
-<code> 
-........ 
-Reading C:/Qt/4.4.3-msvc/demos/spreadsheet/spreadsheet.pro 
-Reading C:/Qt/4.4.3-msvc/demos/textedit/textedit.pro 
-Reading C:/Qt/4.4.3-msvc/demos/chip/chip.pro 
-Reading C:/Qt/4.4.3-msvc/demos/embeddeddialogs/embeddeddialogs.pro 
-Reading C:/Qt/4.4.3-msvc/demos/undo/undo.pro 
-Reading C:/Qt/4.4.3-msvc/demos/arthurplugin/arthurplugin.pro 
-Reading C:/Qt/4.4.3-msvc/demos/sqlbrowser/sqlbrowser.pro 
-Reading C:/Qt/4.4.3-msvc/demos/qtdemo/qtdemo.pro 
-Reading C:/Qt/4.4.3-msvc/demos/mediaplayer/mediaplayer.pro 
-Reading C:/Qt/4.4.3-msvc/demos/browser/browser.pro 
-Reading C:/Qt/4.4.3-msvc/tools/qdoc3/qdoc3.pro 
  
-Qt is now configured for building. Just run nmake. +  * Проверяем наличие необходимого нам профиля Qt (у вас будут свои пути)
-To reconfigure, run nmake confclean and configure. +
-</code>+
  
 +{{:ru:qt-profile.png|}}
  
-== Сборка Qt == 
  
-Приступаем к сборке Qt. Для этого выполняем команду *nmake*: +  * Настраиваем среду сборки
-<code> +
-C:\Qt\4.4.3-msvc>nmake +
-</code>+
  
-Процесс сборки Qt может занять некоторое время (20-60 минут).+{{:ru:creator-comp.png|}}
  
 +  * Настраиваем генератор CMake
  
-== Применение патчей к исходному коду Psi ==+{{:ru:cmake-generator.png|}}
  
-  * Скачиваем патчи для [[http://psi-dev.googlecode.com/svn/trunk/patches/|Psi+ ]] и кладём в директорию *psi-git*. +  * Дополнительно настраиваем флаги CMake по-умолчанию:
-  * Скачиваем [[http://gnuwin32.sourceforge.net/packages/patch.htm|GNU/Patch for Windows]*.+
  
-*_Примечание:_* On MS-Windows, the patchfile must be a text file, i.e. CR-LF must be used as line endings. A file with LF may give the error: “Assertion failed, hunk, file patch.c, line 343,” unless the option ‘–binary’ is given.+{{:ru:cmake-flags.png|}}
  
-  * Запускаем *cmd* в директории *psi-git* и последовательно выполняем следующие команды: 
-<code> 
-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 
-.............. 
-</code> 
  
-*_Примечание:_* Перед скачиванием и установкой патчей, желательно проверить правильность имён файлов с их текущим списком по [[http://psi-dev.googlecode.com/svn/trunk/patches/series.txt|адресу]*.+==== Компиляция Psi в программе QtCreator ====
  
 +  * Запускаем **QtCreator**, если он еще не запущен.
 +  * Открываем файл **CMakeLists.txt** из корневого каталога со скачанными исходными кодами Psi+
 +  * Настраиваем проект
  
-== Компиляция Psi в командной строке Visual Studio 2008 Command Prompt ==+{{:ru:project-setts.png|}}
  
-Переходим в директорию *psi-git* с файлами исходного кода Psi и проверяем правильность установки путей и переменных: +  Можем включать / выключать необходимые типы сборки, которые потом можно выбрать в основном окне программы
-<code> +
-D:\psi-git>qmake -v +
-QMake version 2.01a +
-Using Qt version 4.4.3 in C:\Qt\4.4.3-msvc\lib +
-</code>+
  
-<code> +{{:ru:build-type.png|}}
-D:\psi-git>echo %QMAKESPEC% +
-win32-msvc2008 +
-</code>+
  
-После этого выполняем последовательно следующие команды+  * После настройки проекта начнется предварительное конфигурирование проекта результаты которого будут представлены на вкладке **Основные сообщения**
-<code> +
-D:\psi-git>qmake psi.pro +
-</code>+
  
-Затем: +  * Заходим в опции проекта и выбираем необходимые нам флаги конфигурации (не забываем нажимать **Применить**). Рекомендуемые мною настройки
-<code> +    * Обязательно включаем флаг DEV_MODE если необходим запуск Psi+ прямо из QtCreator 
-D:\psi-git>nmake +    * Добавляем следующие этапы сборки:
-</code>+
  
-После окончание процесса компиляции видим собранное приложение в *D:\psi-git\src\release\psi.exe*.+{{:ru:project-opts.png|}}
  
  
-== Создание проекта psi.vcproj для Microsoft Visual Studio 2008 ==+  * После настройки советую зайти в пункт меню **Сборка** и там по очереди выполнить **Очистить конфигурацию** и **Запустить CMake**. Желательно делать так всегда, когда вы изменяете настройки проекта (меняете состояние флагов). 
 +  * Если все прошло успешно - запускаем сборку по **Ctrl+B** или выбрав в меню **Сборка** - **Собрать проект psi-plus** 
 +  * Сборка займет некоторое время и если пройдет успешно, вы можете запускать Psi+ прямо из QtCreator или посмотреть в настройках запуска проекта путь к собранным файлам
  
-Переходим в директорию *psi-git/srcи запускаем команду на создание проекта *psi* для Microsoft Visual Studio 2008: +  * Если что-то пошло не так, то сначала убедитесь, что у вас установлены все необходимые инструменты для сборки, заданы все необходимые переменные среды или настройте пути к SDK и Gstreamer в настройках проекта (возможно вам необходимо будет добавить необходимые переменные вручную). 
-<code> +  Описание флагов конфигурации смотрим [[https://github.com/psi-plus/psi-plus-snapshots/blob/master/Readme-cmake-ru.txt|тут]] 
-D:\psi-git\src>qmake -t vcapp src.pro +  Сборка SDK своими руками в этом разделе не описана, т.к. эта задача - нетривиальна и порой требует специальных навыков и знаний
-</code>+
  
-После выполнения данной команды в этой же директории видим файл *psi.vcproj*.+**====  
 +ПРИМЕЧАНИЯ ====**
  
-Открываем файл *psi.vcproj* в Microsoft Visual Studio 2008.+1. Для ускорения сборки под Windows можно воспользоваться утилитой [[https://ccache.dev/download.html|Ccache]], для этого нужно распаковать архив с программой в удобный каталог и добавить этот каталог в переменную PATH.
  
-Переключаемся на конфигурацию *Release*, сохраняем *psi.sln* и выполняем команду *Build*.+2. Если у вас что-то не получается - внимательно читайте вывод CMake, cmake-скрипты Psi/Psi+ выдают достаточно подробную информацию о процессе конфигурации
  
  
-*_Примечание_*: при возникновении проблем с компиляцией qca-файлов необходимо в директории *psi-git/third-party/qca* сделать *qmake* и затем *nmake*. 
ru/msvc2008.1283728884.txt.gz · Последнее изменение: 2010/10/17 15:36 (внешнее изменение)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki