第一点 RegexKitLite 是非 Arc的
点击项目 - Build Phases - Compile Sources中, 选择不使用ARC的class,双击class文件, 编辑Compiler Flags加入
-fno-objc-arc
第二点
RegexKitLite下载导入项目之后编译提示错误。错误如下
Undefined symbols for architecture i386:
"_uregex_open", referenced from:
_rkl_getCachedRegex in RegexKitLite.o
"_uregex_groupCount", referenced from:
_rkl_getCachedRegex in RegexKitLite.o
"_uregex_setText", referenced from:
_rkl_setCachedRegexToString in RegexKitLite.o
_rkl_clearCachedRegexSetTo in RegexKitLite.o
-[RKLBlockEnumerationHelper initWithRegex:options:string:range:error:] in RegexKitLite.o
"_uregex_start", referenced from:
_rkl_performRegexOp in RegexKitLite.o
_rkl_search in RegexKitLite.o
_rkl_findRanges in RegexKitLite.o
"_uregex_end", referenced from:
_rkl_performRegexOp in RegexKitLite.o
_rkl_search in RegexKitLite.o
_rkl_findRanges in RegexKitLite.o
"_uregex_find", referenced from:
_rkl_search in RegexKitLite.o
"_uregex_findNext", referenced from:
_rkl_search in RegexKitLite.o
_rkl_replaceAll in RegexKitLite.o
"_uregex_reset", referenced from:
_rkl_replaceAll in RegexKitLite.o
"_uregex_appendReplacement", referenced from:
_rkl_replaceAll in RegexKitLite.o
"_uregex_appendTail", referenced from:
_rkl_replaceAll in RegexKitLite.o
"_uregex_close", referenced from:
_rkl_clearCachedRegex in RegexKitLite.o
"_u_errorName", referenced from:
_rkl_userInfoDictionary in RegexKitLite.o
_rkl_makeNSError in RegexKitLite.o
_rkl_NSExceptionForRegex in RegexKitLite.o
"_u_strlen", referenced from:
_rkl_userInfoDictionary in RegexKitLite.o
"_uregex_clone", referenced from:
-[RKLBlockEnumerationHelper initWithRegex:options:string:range:error:] in RegexKitLite.o
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status
解决办法:
In project setting search "other" at Other Linker Flags put the word "-licucore".
再工程 的Target, build Settings 找到“Other linker Flags” 然后加上 “-icucore”。
编译设置的Other Linker Flags中添加“-licucore”