Установка iPhone Toolchain
Sunday, October 18, 2009 10:26:30 AM
Что нам потребуется?
1. iPhone или iPod Touch с установленной прошивкой 3.0 (не выше!)
2. Компьютер с ОС Linux. Я использую OpenSuSE 11.1, хотя подойдет любой из популярных дистрибутивов.
3. Wi-Fi сеть, для связи с iPhone.
4. iPhone 3.0 SDK, который можно скачать тут
5. ipsw-файл с прошивкой 3.0 для iPhone 3G, который можно найти на сайте http://www.felixbruns.de/iPod/firmware/
6. Около 10gb свободного места на жестком диске, для временных файлов.
Jailbreak
Чтобы запускать программы на iPhone/iPod потребуется доступ к файлой системе и возможность подписывать программы исполняемые файлы, поэтому сделайте jailbreak для вашего устройства с прошивкой 3.0.
Для iPhone 2G, iPhone 3G, iPod Touch 1G, iPod Touch 2G рекомендую воспользоваться утилитой redsn0w. Скачать ее можно с сайта Dev-Team.
В подробности этого процесса углубляться не буду, потому что на эту тему уже написано много разнообразных HOW-TO.
Подготовка к установке
1.Создайте где-нибудь каталог, где будут располагаться все файлы, связанные с iPhone-Toolchain. У меня это ~/Projects/iphone/toolchain.
2.Установите следующие переменные окружения. Я сделал небольшой скрипт, который подключаю с помощью команды "source".
3.Создайте каталог files в корне toolchain-окружения, т.е ~/Projects/iphone/toolchain/files, куда поместите ваш образ iPhone-SDK, далее создайте подкаталог files/firmware, куда поместите ipsw-файл с прошивкой iPhone 3G.
4.Установите следующие зависимости, для Ubuntu/Debian они будут выглядеть так:
Можно поставить утилиту dmg2img, но если ее не окажется в репозиториях, то установочный скрипт скачает ее самостоятельно.
Если у вас 64-битный дистрибутив, то дополнительно нужно установить:
5.Скачайте скрипт установки iPhone toolchain:
Установка
Убедитесь, что подключены переменные окружения и запустите скрипт tollchain.sh:
Компиляция и запуск примера:
Установка закончена. Теперь можно запустить пример программы
1.Компиляция
Войдите в каталог apps/. Там находятся два примера. Пример HelloWorldFirst особого интереса не представляет, поэтому разберем HelloToolchain.
Войдите в каталог примера и выполните команду make, если все пройдет успешно, то появится каталог HelloToolchain.app, который представляет собой пользовательское приложение для iPhone, которое можно запускать со SprinBoard.
HelloToolchain - это bash-скрипт, который запускает приложение. Его может и не быть, при запуске app-пакета iPhone пытается запустить файл, имя которого совпадает с названием приложения.
HelloToolchain_ - это исполняемый файл iphone-arm.
icon.png - это иконка программы на SpringBoard.
Info.plist - XML-файл, содержащий информацию о приложении, такую как имя, инфидикатор, язык приложения.
Так же в пакете может находится файл Default.png, который iPhone масштабирует до размера 320x480 и перемещает на передний план, изображение остается до тех пор, пока программа не будет загружена.
Если такого файла нет, то во время загрузки программы экран будет залит черным цветом.
2.Запуск.
Для запуска на вашем iPhone должен быть установлен openssh-сервер и утилита ldid, все это можно установить с помощью программы Cydia.
Скопируйте HelloToolchain.app в каталог /Application на iPhone с помощью scp, cтандартный пароль root на iPhone - alpine:
Где IP - это ip вашего iPhone в wi-fi сети.
Далее воспользуйтесь утилитой ldid на iPhone, для того, чтобы подписать исполняемый файл:
Последняя команда перезагрузит SpringBoard и на вашем рабочем столе iPhone должна появится программа HelloToolchain.
Удачи!
1. iPhone или iPod Touch с установленной прошивкой 3.0 (не выше!)
2. Компьютер с ОС Linux. Я использую OpenSuSE 11.1, хотя подойдет любой из популярных дистрибутивов.
3. Wi-Fi сеть, для связи с iPhone.
4. iPhone 3.0 SDK, который можно скачать тут
5. ipsw-файл с прошивкой 3.0 для iPhone 3G, который можно найти на сайте http://www.felixbruns.de/iPod/firmware/
6. Около 10gb свободного места на жестком диске, для временных файлов.
Jailbreak
Чтобы запускать программы на iPhone/iPod потребуется доступ к файлой системе и возможность подписывать программы исполняемые файлы, поэтому сделайте jailbreak для вашего устройства с прошивкой 3.0.
Для iPhone 2G, iPhone 3G, iPod Touch 1G, iPod Touch 2G рекомендую воспользоваться утилитой redsn0w. Скачать ее можно с сайта Dev-Team.
В подробности этого процесса углубляться не буду, потому что на эту тему уже написано много разнообразных HOW-TO.
Подготовка к установке
1.Создайте где-нибудь каталог, где будут располагаться все файлы, связанные с iPhone-Toolchain. У меня это ~/Projects/iphone/toolchain.
2.Установите следующие переменные окружения. Я сделал небольшой скрипт, который подключаю с помощью команды "source".
export PREFIX=~/Projects/iphone/toolchain/pre
export SYS_DIR=~/Projects/iphone/toolchain/sys
export SRC_DIR=~/Projects/iphone/toolchain/src
export PATH="${PREFIX}/bin":"${PATH}"
export BUILD_DIR=~/Projects/iphone/toolchain/bld
3.Создайте каталог files в корне toolchain-окружения, т.е ~/Projects/iphone/toolchain/files, куда поместите ваш образ iPhone-SDK, далее создайте подкаталог files/firmware, куда поместите ipsw-файл с прошивкой iPhone 3G.
4.Установите следующие зависимости, для Ubuntu/Debian они будут выглядеть так:
apt-get install \ automake \ bison \ cpio \ flex \ g++ \ g++-4.3 \ g++-4.3-multilib \ gawk \ gcc-4.3 \ git-core \ gobjc-4.3 \ gzip \ libbz2-dev \ libcurl4-openssl-dev \ libssl-dev \ make \ mount \ subversion \ sudo \ tar \ unzip \ uuid \ uuid-dev \ wget \ xar \ zlib1g-dev \
Можно поставить утилиту dmg2img, но если ее не окажется в репозиториях, то установочный скрипт скачает ее самостоятельно.
Если у вас 64-битный дистрибутив, то дополнительно нужно установить:
apt-get install g++-4.3-multilib gcc-4.3-multilib gobjc-4.3-multilib
5.Скачайте скрипт установки iPhone toolchain:
cd ~/Projects/iphone/toolchain svn checkout http://iphonedevonlinux.googlecode.com/svn/trunk/ ./
Установка
Убедитесь, что подключены переменные окружения и запустите скрипт tollchain.sh:
chmod u+x toolchain.sh ./toolchain.sh all
Компиляция и запуск примера:
Установка закончена. Теперь можно запустить пример программы
1.Компиляция
Войдите в каталог apps/. Там находятся два примера. Пример HelloWorldFirst особого интереса не представляет, поэтому разберем HelloToolchain.
Войдите в каталог примера и выполните команду make, если все пройдет успешно, то появится каталог HelloToolchain.app, который представляет собой пользовательское приложение для iPhone, которое можно запускать со SprinBoard.
$ls HelloToolchain HelloToolchain_ icon.png Info.plist
HelloToolchain - это bash-скрипт, который запускает приложение. Его может и не быть, при запуске app-пакета iPhone пытается запустить файл, имя которого совпадает с названием приложения.
HelloToolchain_ - это исполняемый файл iphone-arm.
icon.png - это иконка программы на SpringBoard.
Info.plist - XML-файл, содержащий информацию о приложении, такую как имя, инфидикатор, язык приложения.
Так же в пакете может находится файл Default.png, который iPhone масштабирует до размера 320x480 и перемещает на передний план, изображение остается до тех пор, пока программа не будет загружена.
Если такого файла нет, то во время загрузки программы экран будет залит черным цветом.
2.Запуск.
Для запуска на вашем iPhone должен быть установлен openssh-сервер и утилита ldid, все это можно установить с помощью программы Cydia.
Скопируйте HelloToolchain.app в каталог /Application на iPhone с помощью scp, cтандартный пароль root на iPhone - alpine:
scp -rp HelloToolchain.app root@$(IP):/Applications
Где IP - это ip вашего iPhone в wi-fi сети.
Далее воспользуйтесь утилитой ldid на iPhone, для того, чтобы подписать исполняемый файл:
cd /Applicaton/HelloToolchain.app ldid -S HelloToolchain_ killall SpringBoard
Последняя команда перезагрузит SpringBoard и на вашем рабочем столе iPhone должна появится программа HelloToolchain.
Удачи!











Unregistered user # Sunday, October 18, 2009 12:31:41 PM
Unregistered user # Sunday, October 18, 2009 3:32:49 PM
Unregistered user # Monday, October 19, 2009 5:02:02 PM
monoimono # Monday, October 19, 2009 9:48:38 PM