Native Linking Error: Framework not found ArcGIS-sim64 when compiling IOS Xamarin.Forms on Windows
Native Linking Error: Framework not found ArcGIS-sim64 when compiling IOS Xamarin.Forms on Windows
如标题所述,我在尝试为 IOS 编译 Xamarin.Forms 应用程序时收到以下链接错误。我正在为 Windows 开发 Visual Studio 并使用 Mac 书籍进行编译。
1>C:\Program Files (x86)\Microsoft Visual
Studio17\Enterprise\MSBuild\Xamarin\iOS\Xamarin.iOS.Common.targets(747,3): error : Native linking error: warning: directory not found for option '-F/Users/vvp/Library/Caches/Xamarin/mtbs/builds/RT.iOS/9bd34334c2bb0c14c8bdf794f67e9fc/framework'1>
C:\Program Files (x86)\Microsoft Visual Studio17\Enterprise\MSBuild\Xamarin\iOS\Xamarin.iOS.Common.targets(747,3): error: Native linking error: warning: directory not found for option '-F/Users/vvp/Library/Caches/Xamarin/mtbs/builds/RT.iOS/9bd34334c2bb0c14c8bdf794fb67e9fc/framework'
1>C:\Program Files (x86)\Microsoft Visual Studio17\Enterprise\MSBuild\Xamarin\iOS\Xamarin.iOS.Common.targets(747,3): error : Native linking error: framework not found ArcGIS-sim64
直接使用 VS 2017 在 Mac 上编译即可。该应用程序在 IPhone 模拟器上部署和运行。我正在使用完全相同的配置。
但是,我收到以下警告,我认为这些警告与上面的错误消息一致。
/Users/vvv/Desktop/Selectron.Field.RouteTracker/RT/RT.iOS/warning MT5203: Warning: warning: ignoring file
/Users/vvv/Desktop/Selectron.Field.RouteTracker/packages/Esri.ArcGISRuntime.Xamarin.iOS.100.1.0/framework/ArcGIS-sim.framework/ArcGIS-sim, file was built for i386 which is not the architecture being linked (x86_64):
/Users/vvv/Desktop/Selectron.Field.RouteTracker/packages/Esri.ArcGISRuntime.Xamarin.iOS.100.1.0/framework/ArcGIS-sim.framework/ArcGIS-sim (RT.iOS) Native linking
/Users/vvv/Desktop/Selectron.Field.RouteTracker/packages/Esri.ArcGISRuntime.Xamarin.iOS.100.1.0/framework/ArcGIS-sim.framework/ArcGIS-sim, file was built for i386 which is not the architecture being linked (x86_64):
/Users/vvv/Desktop/Selectron.Field.RouteTracker/packages/Esri.ArcGISRuntime.Xamarin.iOS.100.1.0/framework/ArcGIS-sim.framework/ArcGIS-sim (RT.iOS) Native linking
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/iOS/Xamarin.iOS.Common.targets(3,3): Warning MSB6002: The command-line for the "MTouch" task is too long. Command-lines longer than 32000 characters are likely to fail. Try reducing the length of the command-line by breaking down the call to "MTouch" into multiple calls with fewer parameters per call. (MSB6002) (RT.iOS)
我已经尝试通过 visual studio 更改支持的体系结构,但没有成功。
我猜测 MAC 上的编译过程提供了某些参数,允许构建无论如何发生。对有关该主题的文档或想法的任何建议都表示赞赏。
尚未在实际设备上进行测试。
有问题的文件位于
Users/vvp/Library/Caches/Xamarin/mtbs/builds/RT.iOS/9bd34334c2bb0c14c8bdf794fb67e9fc/framework' 在 MAC 上确实存在的是:
ArcGIS-sim: 一个动态链接的共享库 i386
ArcGIS-sim64:一个 64 位动态链接共享库 x86-64
但是 ArcGis-arm 似乎不存在(它在我的 windows 机器上可用,而不是 Mac)。
此外,我在 IOS 项目文件中收到以下错误,尽管我已确认存在问题的文件。
<Error Condition="!Exists('..\..\packages\Esri.ArcGISRuntime.Xamarin.iOS.100.1.0\build\Xamarin.iOS10\Esri.ArcGISRuntime.Xamarin.iOS.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Esri.ArcGISRuntime.Xamarin.iOS.100.1.0\build\Xamarin.iOS10\Esri.ArcGISRuntime.Xamarin.iOS.targets'))" />
Visual studio 16 缺少最新更新。
我早该意识到这一点,但文件位置不同。
更新 visual studio 和 xamarin 解决了问题。
如标题所述,我在尝试为 IOS 编译 Xamarin.Forms 应用程序时收到以下链接错误。我正在为 Windows 开发 Visual Studio 并使用 Mac 书籍进行编译。
1>C:\Program Files (x86)\Microsoft Visual
Studio17\Enterprise\MSBuild\Xamarin\iOS\Xamarin.iOS.Common.targets(747,3): error : Native linking error: warning: directory not found for option '-F/Users/vvp/Library/Caches/Xamarin/mtbs/builds/RT.iOS/9bd34334c2bb0c14c8bdf794f67e9fc/framework'1>
C:\Program Files (x86)\Microsoft Visual Studio17\Enterprise\MSBuild\Xamarin\iOS\Xamarin.iOS.Common.targets(747,3): error: Native linking error: warning: directory not found for option '-F/Users/vvp/Library/Caches/Xamarin/mtbs/builds/RT.iOS/9bd34334c2bb0c14c8bdf794fb67e9fc/framework'
1>C:\Program Files (x86)\Microsoft Visual Studio17\Enterprise\MSBuild\Xamarin\iOS\Xamarin.iOS.Common.targets(747,3): error : Native linking error: framework not found ArcGIS-sim64
直接使用 VS 2017 在 Mac 上编译即可。该应用程序在 IPhone 模拟器上部署和运行。我正在使用完全相同的配置。 但是,我收到以下警告,我认为这些警告与上面的错误消息一致。
/Users/vvv/Desktop/Selectron.Field.RouteTracker/RT/RT.iOS/warning MT5203: Warning: warning: ignoring file
/Users/vvv/Desktop/Selectron.Field.RouteTracker/packages/Esri.ArcGISRuntime.Xamarin.iOS.100.1.0/framework/ArcGIS-sim.framework/ArcGIS-sim, file was built for i386 which is not the architecture being linked (x86_64):
/Users/vvv/Desktop/Selectron.Field.RouteTracker/packages/Esri.ArcGISRuntime.Xamarin.iOS.100.1.0/framework/ArcGIS-sim.framework/ArcGIS-sim (RT.iOS) Native linking
/Users/vvv/Desktop/Selectron.Field.RouteTracker/packages/Esri.ArcGISRuntime.Xamarin.iOS.100.1.0/framework/ArcGIS-sim.framework/ArcGIS-sim, file was built for i386 which is not the architecture being linked (x86_64):
/Users/vvv/Desktop/Selectron.Field.RouteTracker/packages/Esri.ArcGISRuntime.Xamarin.iOS.100.1.0/framework/ArcGIS-sim.framework/ArcGIS-sim (RT.iOS) Native linking
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/iOS/Xamarin.iOS.Common.targets(3,3): Warning MSB6002: The command-line for the "MTouch" task is too long. Command-lines longer than 32000 characters are likely to fail. Try reducing the length of the command-line by breaking down the call to "MTouch" into multiple calls with fewer parameters per call. (MSB6002) (RT.iOS)
我已经尝试通过 visual studio 更改支持的体系结构,但没有成功。
我猜测 MAC 上的编译过程提供了某些参数,允许构建无论如何发生。对有关该主题的文档或想法的任何建议都表示赞赏。
尚未在实际设备上进行测试。
有问题的文件位于 Users/vvp/Library/Caches/Xamarin/mtbs/builds/RT.iOS/9bd34334c2bb0c14c8bdf794fb67e9fc/framework' 在 MAC 上确实存在的是: ArcGIS-sim: 一个动态链接的共享库 i386 ArcGIS-sim64:一个 64 位动态链接共享库 x86-64
但是 ArcGis-arm 似乎不存在(它在我的 windows 机器上可用,而不是 Mac)。
此外,我在 IOS 项目文件中收到以下错误,尽管我已确认存在问题的文件。
<Error Condition="!Exists('..\..\packages\Esri.ArcGISRuntime.Xamarin.iOS.100.1.0\build\Xamarin.iOS10\Esri.ArcGISRuntime.Xamarin.iOS.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Esri.ArcGISRuntime.Xamarin.iOS.100.1.0\build\Xamarin.iOS10\Esri.ArcGISRuntime.Xamarin.iOS.targets'))" />
Visual studio 16 缺少最新更新。
我早该意识到这一点,但文件位置不同。
更新 visual studio 和 xamarin 解决了问题。