当我在Xcode 4.2上运行我的项目时,我得到了这种回应,显示缺少31个.o文件的错误。
而这31个错误看起来像这样:
ld: warning: ignoring file ../pjproject-svn/pjlib/lib/libpj-arm-apple-darwin9.a, file was built for archive which is not the architecture being linked (armv7)
ld: warning: ignoring file ../pjproject-svn/pjlib-util/lib/libpjlib-util-arm-apple-darwin9.a, file was built for archive which is not the architecture being linked (armv7)
ld: warning: ignoring file ../pjproject-svn/pjnath/lib/libpjnath-arm-apple-darwin9.a, file was built for archive which is not the architecture being linked (armv7)
ld: warning: ignoring file ../pjproject-svn/pjmedia/lib/libpjmedia-arm-apple-darwin9.a, file was built for archive which is not the architecture being linked (armv7)
ld: warning: ignoring file ../pjproject-svn/pjsip/lib/libpjsip-arm-apple-darwin9.a, file was built for archive which is not the architecture being linked (armv7)
ld: warning: ignoring file ../pjproject-svn/pjsip/lib/libpjsip-simple-arm-apple-darwin9.a, file was built for archive which is not the architecture being linked (armv7)
ld: warning: ignoring file ../pjproject-svn/pjsip/lib/libpjsip-ua-arm-apple-darwin9.a, file was built for archive which is not the architecture being linked (armv7)
ld: warning: ignoring file ../pjproject-svn/pjsip/lib/libpjsua-arm-apple-darwin9.a, file was built for archive which is not the architecture being linked (armv7)
ld: warning: ignoring file ../pjproject-svn/pjmedia/lib/libpjmedia-codec-arm-apple-darwin9.a, file was built for archive which is not the architecture being linked (armv7)
ld: warning: ignoring file ../pjproject-svn/third_party/lib/libgsmcodec-arm-apple-darwin9.a, file was built for archive which is not the architecture being linked (armv7)
ld: warning: ignoring file ../pjproject-svn/pjmedia/lib/libpjmedia-audiodev-arm-apple-darwin9.a, file was built for archive which is not the architecture being linked (armv7)
ld: warning: ignoring file ../pjproject-svn/third_party/lib/libresample-arm-apple-darwin9.a, file was built for archive which is not the architecture being linked (armv7)
ld: warning: ignoring file ../pjproject-svn/third_party/lib/libg7221codec-arm-apple-darwin9.a, file was built for archive which is not the architecture being linked (armv7)
Undefined symbols for architecture armv7:
"_pjsua_call_get_count", referenced from:
-[SiphonApplication processCallState:] in SiphonApplication.o
-[SiphonApplication callDisconnecting] in SiphonApplication.o
-[CallViewController processCall:] in CallViewController.o
"_pjmedia_tonegen_play_digits", referenced from:
_sip_call_play_digits in dtmf.o
"_pjsua_acc_get_info", referenced from:
_on_reg_state in call.o
"_pjsua_perror", referenced from:
_sip_connect in call.o
_sip_dial_with_uri in call.o
_call_init_tonegen in dtmf.o
"_pjsua_conf_disconnect", referenced from:
_sip_ring_stop in ring.o
"_pjsua_call_is_active", referenced from:
-[CallViewController findNextCall] in CallViewController.o
"_pj_pool_calloc", referenced from:
_sip_call_play_digits in dtmf.o
_pj_pool_zalloc in dtmf.o
"_pjsua_acc_is_valid", referenced from:
_sip_disconnect in call.o
"_pjsua_call_reinvite", referenced from:
-[CallViewController setHoldEnabled:] in CallViewController.o
"_pjsua_media_config_default", referenced from:
_sip_startup in call.o
"_pjsua_create", referenced from:
_sip_startup in call.o
"_pjsua_acc_add", referenced from:
_sip_connect in call.o
"_pjsua_acc_config_default", referenced from:
_sip_connect in call.o
"_pj_log_get_level", referenced from:
_sip_startup in call.o
_on_call_state in call.o
_on_incoming_call in call.o
_on_mwi_info in call.o
_sip_connect in call.o
_sip_dial_with_uri in call.o
_sip_manage_codec in call.o
...
"_pjsua_call_set_user_data", referenced from:
_call_init_tonegen in dtmf.o
_sip_call_deinit_tonegen in dtmf.o
"_pjsua_conf_connect", referenced from:
_on_call_media_state in call.o
_sip_ringback_start in ring.o
_call_init_tonegen in dtmf.o
"_pjsua_call_get_user_data", referenced from:
_sip_call_play_digits in dtmf.o
_sip_call_deinit_tonegen in dtmf.o
"_pjsua_call_dial_dtmf", referenced from:
_sip_call_play_digits in dtmf.o
"_pjsua_pool_create", referenced from:
_sip_startup in call.o
-[CallViewController createCall:] in CallViewController.o
_call_init_tonegen in dtmf.o
"_pjmedia_tonegen_play", referenced from:
_sip_ring_init in ring.o
"_pj_pool_release", referenced from:
_sip_cleanup in call.o
-[CallViewController createCall:] in CallViewController.o
_call_init_tonegen in dtmf.o
_sip_call_deinit_tonegen in dtmf.o
"_pj_get_version", referenced from:
_sip_startup in call.o
"_pjsua_call_hangup", referenced from:
_sip_hangup in call.o
"_pjsua_msg_data_init", referenced from:
_sip_call_play_info_digits in dtmf.o
"_pj_strdup_with_null", referenced from:
-[CallViewController createCall:] in CallViewController.o
"_pj_rand", referenced from:
_sip_startup in call.o
"_pjsua_media_transports_create", referenced from:
_sip_startup in call.o
"_pjsua_destroy", referenced from:
_sip_cleanup in call.o
"_pj_strerror", referenced from:
-[SiphonApplication displayStatus:withTitle:] in SiphonApplication.o
"_pjsua_verify_sip_url", referenced from:
-[SiphonApplication application:handleOpenURL:] in SiphonApplication.o
_sip_connect in call.o
_sip_dial_with_uri in call.o
"_pjsua_call_send_request", referenced from:
_sip_call_play_info_digits in dtmf.o
"_pjsua_call_get_max_count", referenced from:
-[CallViewController findNextCall] in CallViewController.o
"_pj_strdup2_with_null", referenced from:
_sip_startup in call.o
-[CallViewController createCall:] in CallViewController.o
"_pjmedia_tonegen_stop", referenced from:
_sip_call_play_digits in dtmf.o
"_pjsua_acc_del", referenced from:
_sip_disconnect in call.o
"_pjmedia_port_destroy", referenced from:
_sip_ring_deinit in ring.o
_sip_call_deinit_tonegen in dtmf.o
"_pjsua_transport_config_default", referenced from:
_sip_startup in call.o
"_pjsua_conf_adjust_rx_level", referenced from:
-[CallViewController setMute:] in CallViewController.o
"_pjsua_codec_set_priority", referenced from:
_sip_manage_codec in call.o
"_pjmedia_tonegen_create2", referenced from:
_sip_ring_init in ring.o
"_pjsua_logging_config_default", referenced from:
_sip_startup in call.o
"_pjmedia_tonegen_create", referenced from:
_call_init_tonegen in dtmf.o
"_pjsua_call_make_call", referenced from:
_sip_dial_with_uri in call.o
"_pjsua_transport_create", referenced from:
_sip_startup in call.o
"_pj_strdup3", referenced from:
_sip_startup in call.o
"_pj_pool_alloc", referenced from:
_sip_connect in call.o
"_pjsip_parse_uri", referenced from:
-[CallViewController createCall:] in CallViewController.o
"_pj_str", referenced from:
_sip_connect in call.o
_sip_dial_with_uri in call.o
_sip_ring_init in ring.o
-[CallViewController composeDTMF] in CallViewController.o
_sip_call_play_digit in dtmf.o
_sip_call_play_info_digit in dtmf.o
_sip_call_play_info_digits in dtmf.o
...
"_pjsua_init", referenced from:
_sip_startup in call.o
"_pj_log_1", referenced from:
_sip_startup in call.o
_on_call_state in call.o
_on_incoming_call in call.o
_sip_connect in call.o
_sip_dial_with_uri in call.o
_sip_manage_codec in call.o
"_pjsua_call_get_info", referenced from:
_on_call_state in call.o
_on_call_media_state in call.o
_on_incoming_call in call.o
-[CallViewController timeout:] in CallViewController.o
_call_init_tonegen in dtmf.o
"_pj_log_3", referenced from:
_on_mwi_info in call.o
"_pjsua_conf_remove_port", referenced from:
_sip_ring_deinit in ring.o
_sip_call_deinit_tonegen in dtmf.o
"_pjsua_config_default", referenced from:
_sip_startup in call.o
"_pj_log_5", referenced from:
_sip_dial_with_uri in call.o
"_pjsua_conf_add_port", referenced from:
_sip_ring_init in ring.o
_call_init_tonegen in dtmf.o
"_pjsip_get_status_text", referenced from:
-[SiphonApplication application:handleOpenURL:] in SiphonApplication.o
-[SiphonApplication dialup:number:] in SiphonApplication.o
"_pjsua_call_set_hold", referenced from:
-[CallViewController setHoldEnabled:] in CallViewController.o
-[CallViewController buttonClicked:] in CallViewController.o
"_pjsua_start", referenced from:
_sip_startup in call.o
"_pjsua_call_answer", referenced from:
_on_incoming_call in call.o
_sip_answer in call.o
"_pjmedia_tonegen_rewind", referenced from:
_sip_ring_stop in ring.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Ld Build/Siphon/Build/Products/Debug-iphoneos/Siphon.app/Siphon normal armv7
cd /Users/jaxtrinc/Desktop/Siphone/Siphon2
setenv IPHONEOS_DEPLOYMENT_TARGET 4.0
setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/clang -arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk
-L/Users/jaxtrinc/Desktop/Siphone/Siphon2/Build/Siphon/Build/Products/Debug-iphoneos
-L../pjproject-svn/pjlib/lib -L../pjproject-svn/pjsip/lib -L../pjproject-svn/pjmedia/lib -L../pjproject-svn/pjlib-util/lib -L../pjproject-svn/pjnath/lib -L../pjproject-svn/third_party/lib -L../pjproject-svn/pjmedia/lib -L../pjproject-svn/third_party/lib -L/Users/jaxtrinc/Desktop/Siphone/Siphon2/../pjproject-svn/third_party/lib
-L/Users/jaxtrinc/Desktop/Siphone/Siphon2/../pjproject-svn/pjmedia/lib -F/Users/jaxtrinc/Desktop/Siphone/Siphon2/Build/Siphon/Build/Products/Debug-iphoneos
-filelist /Users/jaxtrinc/Desktop/Siphone/Siphon2/Build/Siphon/Build/Intermediates/Siphon.build/Debug-iphoneos/Siphon.build/Objects-normal/armv7/Siphon.LinkFileList
-dead_strip -framework Foundation -framework UIKit -miphoneos-version-min=4.0 -framework SystemConfiguration -framework UIKit -framework AddressBookUI -framework AddressBook -framework
Foundation -framework AudioToolbox -lpj-arm-apple-darwin9
-lpjlib-util-arm-apple-darwin9 -lpjnath-arm-apple-darwin9 -lpjmedia-arm-apple-darwin9 -lpjsip-arm-apple-darwin9 -lpjsip-simple-arm-apple-darwin9 -lpjsip-ua-arm-apple-darwin9 -lpjsua-arm-apple-darwin9 -framework CoreGraphics -lsqlite3.0 -lpjmedia-codec-arm-apple-darwin9 -lgsmcodec-arm-apple-darwin9 -framework CFNetwork -lpjmedia-audiodev-arm-apple-darwin9 -lresample-arm-apple-darwin9 -lg7221codec-arm-apple-darwin9 -framework IOKit -o
/Users/jaxtrinc/Desktop/Siphone/Siphon2/Build/Siphon/Build/Products/Debug-iphoneos/Siphon.app/Siphon
此外,我还遇到了“链接器错误”
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
有人能帮我解决这个问题吗?
file libFoo.a
或者lipo -info libFoo.a
,可以查看每个 lib*.a 文件中的体系结构。你需要确保所有的库文件都包含 armv6 和 armv7 的指令集。 - Mike K