我正在尝试交叉编译FontForge的库和二进制文件到armv7,但我似乎遇到了几个主要问题。
首先,我在Xcode 5.0.1上使用SDK7.0。
在我的第一次配置,我得到几个"错误:不能检查X而交叉编译"
一旦我绕过了这个,我意识到该程序正在寻找Carbon(在iOS SDK文件中已弃用很长时间了)
一旦我移动了旧的SDK文件,大量的文件给出了关于未知类型的错误(来自_type .h及其所有相关的头文件),最明显的是ssize和off_t。即使在修补了这些之后,我最终还是从sdk中得到了一个"不支持的架构"。
下面是我的configure命令:
./configure '--with-programs=yes' '--without-spiro' '--with-x=no' '--enable-static' '--with-cairo=no' '--without-python' '--with-pango=no' '--prefix=/Users/thebertolet/fontforge-ios' '--host=arm-apple-darwin' 'CC=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc' 'CFLAGS=-mthumb -arch armv7 -miphoneos-version-min=5.1 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/ -I/Users/thebertolet/freetype-ios/include/freetype2/ -I/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/usr/include/libxml2/' 'LDFLAGS=-mthumb -arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/ -miphoneos-version-min=5.1'
同样值得注意的是:所有必需的库都是必需的,并报告给程序。我想我的具体问题是程序试图找到不存在或对armv7有些不可用的文件。
或者,有人知道一个伟大的方法(除了fontforge)打破ttc和ttf的组合吗?
这很可能完全不可能。你可能会使用Cocoa Touch前端后面的fontforge内部组件,但fontforge是一个原生形式的X11应用程序,带有自定义小部件集,而iOS上唯一的X服务器似乎是用于远程使用桌面Unix应用程序的。你在Android上可能会有更好的运气。