User Tools

Site Tools


en:msvc2008

Psi+ on MS Windows: Build Instructions (win32-msvc2008)

Устаревшая статья

Microsoft Visual Studio 2008 (НЕ РЕКОМЕНДУЕТСЯ)

Необходимый инструментарий

Скачиваем исходный код Psi из git-репозитория:

git clone git://git.psi-im.org/psi.git
cd psi
git submodule init
git submodule update

Скачиваем:

Настройка переменных окружения и необходимых библиотек

В свойствах компьютера (Advanced → Environment Variables) прописываем следующие пути (переменная Path):

  • 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.liblibeay32d.lib* * *ssleay32MD.libssleay32.lib* * *ssleay32MDd.libssleay32d.lib* Выбираем папку *C:\OpenSSL\include\openssl* и копируем всю папку *openssl* в *C:\Program Files\Microsoft Visual Studio 9.0\VC\include* В результате должно получиться так *C:\Program Files\Microsoft Visual Studio 9.0\VC\include\openssl* ==== Установка Qt ==== Скачанный архив *qt-win-opensource-src-4.4.3.zip* распаковываем в папку *C:\Qt\4.4.3-msvc* === Запуск командой строки Visual Studio 2008 Command Prompt === Открываем командную строку Visual Studio 2008 Command Prompt: *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 NMAKE options makefile stderrfile macrodefs targets 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 /ERRORREPORT:{NONE|PROMPT|QUEUE|SEND} Report errors to Microsoft /G Display !include filenames /HELP Display brief usage message …….. </code> === Конфигурирование Qt перед сборкой === Для вывода справки по команде *configure.exe* пишем в cmd: <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. 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? y </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. To reconfigure, run nmake confclean and configure. </code> ==== Сборка Qt ==== Приступаем к сборке Qt. Для этого выполняем команду *nmake*: <code> C:\Qt\4.4.3-msvc>nmake </code> Процесс сборки Qt может занять некоторое время (30-60 минут). ==== Применение патчей к исходному коду Psi ==== * Скачиваем патчи для Psi+ и кладём в директорию *psi-git*. * Скачиваем 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.
  • Запускаем 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:\psi-git>qmake -v
QMake version 2.01a
Using Qt version 4.4.3 in C:\Qt\4.4.3-msvc\lib
D:\psi-git>echo %QMAKESPEC%
win32-msvc2008

После этого выполняем последовательно следующие команды:

qmake psi.pro

Затем:

nmake

После окончание процесса компиляции видим собранный бинарник psi.exe в папке psi-git\src\release.

Создание проекта psi.vcproj для Microsoft Visual Studio 2008

  • Переходим в папку psi-git/src и запускаем команду на создание проекта psi для Microsoft Visual Studio 2008
make -t vcapp src.pro
  • После выполнения данной команды в этой же папке видим файл psi.vcproj
  • Открываем файл psi.vcproj в Microsoft Visual Studio 2008
  • Переключаемся на конфигурацию Release, сохраняем psi.sln и выполняем команду Build

Примечание: При возникновении проблем с компиляцией qca-файлов необходимо в папке psi-git/third-party/qca сделать qmake и затем nmake.

en/msvc2008.txt · Last modified: by zet

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki