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

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


ru:mac_osx

Это старая версия документа!


Сборка Psi+ на Mac OS X "с нуля" (на голой системе)

Что понадобится?

Необходима 64-bit машина. Для сборки приложения в системе должны быть установлены:

  • Qt 4.7.x 32-bit/64-bit x86 universal (собираем самостоятельно)
  • Xcode
  • git

Процесс

Xcode и git скачиваем и устанавливаем самостоятельно - с этим проблем нет.

Скачиваем исходники Qt, распаковываем. Далее в терминале переходим в папку с исходниками.

Следующий шаг, возможно, вам не потребуется:

curl -o 4.8.2_mac_10.5.diff https://raw.github.com/psi-im/psideps/master/qt/patches/4.8.2_mac_10.5.diff
patch -p1 < 4.8.2_mac_10.5.diff

В терминале выполняем:

./configure -release -arch x86 -arch x86_64 -sdk /Developer/SDKs/MacOSX10.5.sdk
make
sudo make install

Скачиваем скрипт автоматической сборки Psi+

curl -o psibuild https://raw.github.com/psi-plus/maintenance/master/scripts/macosx/psibuild.command
chmod 777 psibuild

В переменной QTDIR задаем путь к установленным библиотекам Qt, например QTDIR=/usr/local/Trolltech/Qt-4.8.2 (убедитесь, что в конце пути нет «/» - это важно!)

Запускаем скрипт:

QTDIR=/usr/local/Trolltech/Qt-4.8.2 sh psibuild

Скрипт скачивает все зависимости, необходимые для сборки Psi+ и собирает пакет. Будет создана рабочая директория ~/psi, в которой можно будет найти psi-plus-xxxx.dmg

Если по какой-то причине полученный пакет окажется неработоспособным, придется зависимости собирать самостоятельно. Для этого запускаем скрипт с ключём -b: Для самостоятельной сборки всех зависимостей:

sudo mkdir /psidepsbase
sudo chmod 777 /psidepsbase
QTDIR=/usr/local/Trolltech/Qt-4.8.2 sh psibuild -b

При этом в автоматическом режиме скачиваются и собираются все необходимые зависимости (найти их можно в папке /psidepsbase)

Для сборки версии с поддержкой вэбкит служит ключ -w:

QTDIR=/usr/local/Trolltech/Qt-4.8.2 sh psibuild -w
ru/mac_osx.1348735713.txt.gz · Последнее изменение: 2012/09/27 08:48 (внешнее изменение)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki