在iPhone中启动TTPhotoviewController时收到SIGABRT错误

时间:2010-01-13 15:49:45

标签: c xcode three20 cloudmade sigabrt

我正在创建一个iPhone应用程序,其中包含一些功能,如Cycle路径和Photoviewer。

对于这些使用Cloudmade api的Cycle路径,以及使用Three20的TTPhotoviewcontroller的PhotoViewer。

这些自行车路线图完美无瑕,但我认为它可以解决错误。

我将在这里描述2个案例,说明我尝试了什么以及我收到了什么问题。

案例1: 编译出错并收到以下错误:

duplicate symbol _aatan2 in /Users/wesleycoppens/Documents/MooiWest/libs/Proj4/Device/libProj4.a(aasincos.o) and /Users/wesleycoppens/Documents/MooiWest/libs/route-me/Device/libMapView.a(aasincos.o)
Command /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 failed with exit code 1

当我尝试添加到Other链接器标记标志-all_load时,我收到此错误。 请参阅下面的图像,了解我的其他链接器标志当前的样子。

请参阅link了解图片:http://i49.tinypic.com/262o7q1.png

案例2: 编译很顺利,app在模拟器中完美运行,但接收SIGABRT与设备。

在这种情况下,我删除了其他链接器标志中的标志-all_load。现在我没有收到任何编译错误,但是当我点击连接到photoviewer应用程序的tablerow时,我收到了一个SIGABRT。

我不确定我是否正确连接到Photoviewer,所以这是我推动其他photoview的部分。

PhotoTest2Controller *photoViewController = [[PhotoTest2Controller alloc] init];
[self.navigationController pushViewController:photoViewController animated:YES];
[photoViewController release];

此处链接器的另一个屏幕截图标记了在这种情况下如何定义它们:

请参阅link了解图片: http://i47.tinypic.com/vhuv0z.png

1 个答案:

答案 0 :(得分:1)

最后我找到了解决方案。您可以在所有需要的库中使用“-force_load path_to_library / libXXX.a”,而不是使用“-all_load”标记,除非您获得重复错误。它对我有用!希望它有所帮助。