2011-06-09 31 views
2

我正在构建Monotouch(试用版)4.0.3。项目。在MonoTouch项目中加载组件的问题

警告:它与警告编译图书馆loader.dll“在应用程序包丢失,无法提取内容

所有其他DLL的构建过程中成功地捆绑在一起,而这一次是工作之前。编译完警告后,运行时(在模拟器上)在加载程序集失败时会出现分段错误,导致其在加载时崩溃。

我已搜索此警告,但我一直未能找到任何对它的引用。 有谁知道为什么程序集没有被添加到应用程序包?

+0

我有完全相同的问题,我希望有人能告诉我该怎么做。 – 2011-06-10 18:53:52

+0

使用MonoTouch 3.2.6,这将是我的建议。 4.0.x版本被打破。但是,我不知道是否可以将该版本作为试用版。 – jonathanpeppers 2011-06-11 15:33:10

+0

作为试用版似乎无法取回版本,但谢谢您的建议。我现在尝试重新创建整个解决方案并复制源文件,但问题仍在发生。 – TFerch 2011-06-13 15:21:43

回答

1

这听起来像链接器是删除loader.dll,因为它认为没有使用它。尝试将项目的链接器设置设置为“仅链接sdk”。

1

mhutch是正确的,链接器是机会性删除图书馆。然而,默认的链接器设置并不是链接任何东西,所以他的解决方案只能在你连接所有程序集的罕见情况下工作(你不想用MonoTouch做,因为不应该嵌入对SDK的引用) 。

解决方法是在调用程序集内部新建要使用的库中的某个实例。另外,我不知道iOS开发人员做了什么,因为这种行为会让运行时访问卫星库变得不可能。

+0

“DontPruneMeBro”的+1 – 2013-02-20 10:36:56