Open Goldie13 opened 4 years ago
Generating an obj-c framework requires Xcode/clang/a mac, and today the Embeddinator-4000 does not support remote builds to my knowledge.
Uploaded sample projects. Can you pls confirm whether E4K does not support on visual studio windows for iOS applications using Mac agent (remote build)?
Sorry I was not crystal clear: The "remote build host" support in VS Windows does not apply to Embeddinator-4000. Full stop.
If you want to build a macOS native library with an embedded .NET library, you'll need to do it on a macOS build machine.
I'm leaving this issue open as a feature request, but give the sheer scale of it seems unlikely to be implemented.
Wrapper_iOSLib.zip Wrapper_NetStd.zip Wrapper.zip
Steps to Reproduce
Expected Behavior
It should create .framework
Actual Behavior
1>------ Rebuild All started: Project: Wrapper, Configuration: Debug Any CPU ------ 1> Wrapper -> C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\bin\Debug\Wrapper.dll 1> Parsing assemblies... 1> Parsed 'C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\bin\Debug\Wrapper.dll' 1> Processing assemblies... 1> Processing: 1 assemblies 1> Processing Assembly: Wrapper 1> Processing Type: Wrapper_ConnectivityWrapper 1> TypeMapper Register: System.Void .ctor() init 1> TypeMapper Register: System.Void StartBackend() startBackend 1> 1 types found 1> Generating binding code... 1> Begin Generator 1> Generating Assembly: Wrapper 1> Generating Type: Wrapper_ConnectivityWrapper 1> Generating Method: System.Void StartBackend() 1> Generating Method Impl: System.Void StartBackend() 1> Generated: C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\Output\bindings.h 1> Generated: C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\Output\bindings-private.h 1> Generated: C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\Output\bindings.m 1> Generated: C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\Output\bindings.xml 1> Generated: C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\Output\embeddinator.h 1> Generated: C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\Output\glib.h 1> Generated: C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\Output\mono_embeddinator.h 1> Generated: C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\Output\mono-support.h 1> Generated: C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\Output\objc-support.h 1> Generated: C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\Output\glib.c 1> Generated: C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\Output\mono_embeddinator.c 1> Generated: C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\Output\objc-support.m 1> Generated: C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\Output\Make.config 1> Compiling binding code... 1> EM0000: Unexpected error - Please fill a bug report at https://github.com/mono/Embeddinator-4000/issues 1> System.NullReferenceException: Object reference not set to an instance of an object. 1> at Embeddinator.ObjC.SystemCheck.VerifyMono() 1> at Embeddinator.ObjC.Embedder.VerifyDependencies() 1> at Embeddinator.ObjC.Embedder.Compile() 1> at Embeddinator.ObjC.Driver.Main2(String[] args) 1> at Embeddinator.ObjC.Driver.Main(String[] args) 1> Debug Log: 1> Processing: 1 assemblies 1> Processing Assembly: Wrapper 1> Processing Type: Wrapper_ConnectivityWrapper 1> TypeMapper Register: System.Void .ctor() init 1> TypeMapper Register: System.Void StartBackend() startBackend 1> Begin Generator 1> Generating Assembly: Wrapper 1> Generating Type: Wrapper_ConnectivityWrapper 1> Generating Method: System.Void StartBackend() 1> Generating Method Impl: System.Void StartBackend() 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets(5185,5): error MSB3073: The command ""C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\packages\Embeddinator-4000.0.4.0\tools\objcgen.exe" C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\bin\Debug\Wrapper.dll --target=framework --platform=iOS --outdir=C:\NTG7_BYOD\NTG6TVIntegration\MainSolution\InterfaceWrapper\Wrapper\Output -c -v" exited with code 1. ========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========
Environment
1. /Library/Frameworks/Xamarin.Embeddinator-4000.framework/Commands/objcgen -0.4.0
Build Logs
Example Projects