我花了一些时间为 arm64 和 x86_64 架构为 iOS(设备和模拟器)编译 LibiCal。认为它可能对其他人有用。这是我编译 LibiCal-1.0 所遵循的步骤。我从下面的链接中获取了代码
并进行了一些修改以适合 Xcode 5.1
1) 从以下 URL 下载 LibiCal
http://sourceforge.net/projects/freeassociation/
解压并进入 libCal-1.0 文件夹。然后运行
./引导
(需要从http://www.jattcode.com/installing-autoconf-automake-libtool-on-mac-osx-mountain-lion/下载 make 工具)
使用下面的脚本
#!/bin/sh
# SEE: http://www.smallsharptools.com/downloads/libical/
PATH="`xcode-select -print-path`/usr/bin:/usr/bin:/bin"
# set the prefix
PREFIX=${HOME}/Library/libical
OUTPUTDIR=../libical-build
export ARCH=arm64
# Select the desired iPhone SDK
export SDKVER="7.1"
export DEVROOT=`xcode-select --print-path`
export SDKROOT=$DEVROOT/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS${SDKVER}.sdk
export IOSROOT=$DEVROOT/Platforms/iPhoneOS.platform
# Includes
# find $DEVROOT -type d -name include|grep -i iphone|grep -i arm-apple-darwin|grep -vi install-tools|grep -vi simulator
# $SDKROOT/usr/include
# $DEVROOT/Platforms/iPhoneOS.platform/Developer/usr/llvm-gcc-4.2/lib/gcc/arm-apple-darwin10/4.2.1/include
if …Run Code Online (Sandbox Code Playgroud) 我使用的是libical,它是一个解析icalendar格式的库(RFC 2445).
问题是,在位置字段中可能存在一些德语变音符号.
现在libical为每个值返回一个const char*,如:
"K\303\203\302\274nstlerhaus in M\303\203\302\274nchen"
Run Code Online (Sandbox Code Playgroud)
我尝试将其转换为NSString:
[NSString stringWithCString:icalvalue_as_ical_string_r(value) encoding:NSUTF8StringEncoding];
Run Code Online (Sandbox Code Playgroud)
但我得到的是:
Künstlerhaus in München
Run Code Online (Sandbox Code Playgroud)
有什么建议?我将不胜感激任何帮助!