Comments 21
Вот это совпадение! Только вчера под Android собирал, и в это время мой друг в Стиме тоже собирал :D
Разве -DFT2_BUILD_LIBRARY не надо?
Разве -DFT2_BUILD_LIBRARY не надо?
0
Не, не надо.
Оно уже прописано в makefile:
# Note what we also define the macro FT2_BUILD_LIBRARY when building
# FreeType. This is required to let our sources include the internal
# headers (something forbidden by clients).
Про сборку под Андроид я не стал писать ничего, потому что это уже раписано достаточно подробно.
А вот про использование clang почему-то в основном молчат. Видимо из-за того, что gcc совсем недавно выпилили.
Оно уже прописано в makefile:
# Note what we also define the macro FT2_BUILD_LIBRARY when building
# FreeType. This is required to let our sources include the internal
# headers (something forbidden by clients).
Про сборку под Андроид я не стал писать ничего, потому что это уже раписано достаточно подробно.
А вот про использование clang почему-то в основном молчат. Видимо из-за того, что gcc совсем недавно выпилили.
0
Плохо искали. github.com/PaulWagener/mapnik-ios-framework Тут собирают растровый рендер (mapnik) и freetype не самая сложная из зависимостей. :)
Мне очень понравился подход и организация Makefile, так что на основе их подхода я организовал сборку всех своих внешних зависимостей. Среди всего прочего там есть пример как надо собирать libicu, которая может понадобится для нормальной работы с арабскими символами.
Мне очень понравился подход и организация Makefile, так что на основе их подхода я организовал сборку всех своих внешних зависимостей. Среди всего прочего там есть пример как надо собирать libicu, которая может понадобится для нормальной работы с арабскими символами.
0
Не совсем понимаю, как мне надо было формировать запросы в гугле, чтобы в итоге выйти на этот фреймворк.
0
Я и сам не помню как его нашел. Видимо в каком-то из похожих обсуждений кросскомпиляции под iOS на stackoverflow.
0
Не так давно пришло понимание, что не о чем писать вообще. :)
Потому что практически про любую ситуацию можно сказать: решение уже есть в интернете.
Я сам же его как-то нашел или пришел к нему самостоятельно, а значит и другие смогут найти.
Здесь же причиной написать стало то, что решение не гуглится с очевидных запросов.
А параметры для configure не все могут подобрать самостоятельно.
Потому что практически про любую ситуацию можно сказать: решение уже есть в интернете.
Я сам же его как-то нашел или пришел к нему самостоятельно, а значит и другие смогут найти.
Здесь же причиной написать стало то, что решение не гуглится с очевидных запросов.
А параметры для configure не все могут подобрать самостоятельно.
0
Еще важный момент у кросскомпиляции — заголовочные файлы, которые генерятся под текущую платформу при помощи ./configure Опасно может быть использовать одни и те же заголовочные файлы для всех архитектур при сборке проекта. Т.к. с добавлением amd64 могут быть проблемы с внутренними типами библиотек. Решение в следующем:
1. Собирать библиотеки с --prefix=build/$arch, как это делает вышеуказанный Makefile, так чтобы в папке build были доступны все h файлы для каждой из архитектур.
2. Потом прописать в User Header Search File что-то вроде следующей строки: "$(SRCROOT)/../libs/build/$(arch)/include". Так во время сборки каждой из архитектур приложения Xcode будет использовать правильные версии h файлов.
1. Собирать библиотеки с --prefix=build/$arch, как это делает вышеуказанный Makefile, так чтобы в папке build были доступны все h файлы для каждой из архитектур.
2. Потом прописать в User Header Search File что-то вроде следующей строки: "$(SRCROOT)/../libs/build/$(arch)/include". Так во время сборки каждой из архитектур приложения Xcode будет использовать правильные версии h файлов.
0
Спасибо, воспользовался!
Кстати, в строчке конфигурации для armv7s — LDFLAGS="-arch armv7s -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk -miphoneos-version-min=4.2", а должно быть 5.0, не?
Кстати, в строчке конфигурации для armv7s — LDFLAGS="-arch armv7s -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk -miphoneos-version-min=4.2", а должно быть 5.0, не?
+1
AllexIn, а вам не сложно было бы это оформить в виде .sh скрипта?
0
А нечего оформлять. Просто берете все вставки кода из заметки, объединяете в одну портянку — вот вам и готовый скрипт.
0
Нет особого смысла. Я набирал ручками, заодно проверяя пути. У меня например не стоит 7.1 SDK, зато есть 7.0.
+1
Было бы неплохо в статье указать коротко — что такое freetype и зачем он нужен
0
Sign up to leave a comment.
Articles
Change theme settings
Сборка FreeType2 под iOS