我刚刚开始与Lumia (前诺基亚)影像库合作。由于库的一些限制,有必要使用ARM或x86构建配置。
这很好,但我有三个可移植类库,这些类库由应用程序引用。每当我对这些进行更改时,我都必须将构建配置更改回任何CPU,然后返回到ARM,以便可以部署到设备上。
如果我不将构建配置更改为任何CPU并再次返回,那么我所做的更改似乎不会被编译。我对x86的构建配置如下所示:

因此,看到三个PCL只有我为每个x86创建的任意CPU构建配置,但是构建会产生以下错误:
平台目标“x86”不受一个或多个项目目标的支持。
知道我如何设置这个项目,这样我就不必为ARM和x86构建配置构建两次了吗?
发布于 2015-05-19 13:31:01
首先,应该在要为当前活动平台编译的任何项目中启用Build复选框。否则,该项目将不再被编译,如果它被任何其他项目引用,它们将返回到使用位于bin/obj文件夹中的缓存版本;执行Clean和Rebuild将突出显示引用哪些程序集而不首先编译。
接下来,将平台看作是允许使用一个目标体系结构构建解决方案中的所有项目的配置选项,或者根据要部署/运行它们的位置来构建其他项目:当您有不支持AnyCPU的本机代码项目,并且希望在模拟器(x86)或实际设备(ARM)中测试它们时,这一点尤其有用。此外,不要将平台名称与构建项目的实际体系结构相混淆;默认情况下,它是该体系结构的名称,但您可以将其更改为任何类似的名称(例如,Xamarin iOS将iPhone用于物理设备的ARM构建,iPhoneSimulator用于x86模拟器。
最后,请记住,一旦将本机代码项目/库添加到解决方案中,就必须停止在引用它们的任何项目中使用AnyCPU体系结构;必须为特定平台(x86/x64或ARM)构建的项目可以引用AnyCPU程序集,但不能引用AnyCPU程序集。
https://stackoverflow.com/questions/30324296
复制相似问题