Краткое описание о библиотеке: Ссылка библиотеки
Я хочу скомпилировать быструю библиотеку (т.е. http://swift.im/git/swift/tag/?id=swift-2.0beta1) для iPhone SDK. Я проверил его папку с документами и способ компиляции, но они упомянули только этапы компиляции для Windows и Unix (т.е. эта страница содержит ссылку на файлы компиляции http://swift.im/download/#apt). Но я не понимаю, как скомпилировать его для iPhone SDK. Шаги, которые они упомянули, не получают. Итак, кто-нибудь может мне объяснить? После проверки одного из файлов я узнал, что должна быть возможность скомпилировать для iPhone.
Еще один вопрос, который они упомянули, что он под общедоступной лицензией GNU v3, так что я могу использовать это коммерческое приложение, специально одобренное Apple?
Любая помощь будет оценена. Спасибо
фигуры Swiften
уже имеет встроенную поддержку для сборки устройства iOS или симулятора. Я был в состоянии построить это, но не проверял это.
Я буду считать вас Z XCode 4.4 (или что-то достаточно современное) и цель iOS 5.1 работает на iPhone> 3GS. Кроме того, я предполагаю, что вы хотите собрать swiften-1.0.
(если сборка для более раннего iPhone, измените armv7
вернуться к armv6
ниже)
Есть несколько шагов, необходимых для его построения.
открыто swift-1.0/BuildTools/SCons/SConstruct
в редакторе файлов и:
Изменить строку 232 с
env["XCODE_PLATFORM_DEVELOPER_BIN_DIR"] = "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin"
в
env["XCODE_PLATFORM_DEVELOPER_BIN_DIR"] = "/Applications/Xcode.app/Contents" + "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin"
В строке 234 измените armv6
в armv7
Изменить строку 240 с
env["XCODE_SDKROOT"] = "/Developer/Platforms/" + sdkPart + ".platform/Developer/SDKs/" + sdkPart + sdkVer + ".sdk"
в
env["XCODE_SDKROOT"] = "/Applications/Xcode.app/Contents" + "/Developer/Platforms/" + sdkPart + ".platform/Developer/SDKs/" + sdkPart + sdkVer + ".sdk"
(от Мэтта Галлоуэя Компиляция Boost для iPhone)
копия crt_externs.h
в swift
каталог; когда в swift-1.0/
выполнить:
cp /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.1.sdk/usr/include/crt_externs.h .
swiften
требует openssl
, но в iOS нет встроенного, поэтому вам придется скачать и скомпилировать его вручную. Выполните в терминале следующее:
cd <swift-directory>/3rdParty/OpenSSL
wget http://www.openssl.org/source/openssl-1.0.1c.tar.gz
Это загрузит соучастие openssl; чтобы построить его, я использовал скрипт от GitHub. До сих пор внутри <swift-directory>/swift-1.0/3rdParty/OpenSSL
выполнить,
wget --no-check-certificate https://raw.github.com/st3fan/ios-openssl/master/build.sh
редактировать build.sh
— изменить строку 10 с 1.0.1b
в 1.0.1c
,
Сейчас, chmod +x build.sh
и наконец ./build.sh
, Это займет несколько минут, чтобы построить openssl
,
Ты почти у цели — смени каталог на корень swift
и выполнить
./scons Swiften allow_warnings=yes target=iphone-device openssl="<swift-directory>/3rdParty/OpenSSL"
Это создаст библиотеку для связи с приложением, созданным для устройства; если вы хотите запустить его в симуляторе, измените target=iphone-device
в target-iphone-simulator
в строке выше. Файл библиотеки libSwiften.a
можно найти в <swift-directory>/Swiften
,
Других решений пока нет …