mono / Embeddinator-4000

Tools to turn .NET libraries into native libraries that can be consumed on Android, iOS, Mac, Linux and other platforms.
MIT License
758 stars 95 forks source link

[ObjC] ld: framework not found Carbon #778

Open lukaszknaptlc opened 4 years ago

lukaszknaptlc commented 4 years ago

Steps to Reproduce

  1. Create simple C# class with 1 test method
  2. Try to generate ObjC framework

Expected Behavior

Framework is created

Actual Behavior

/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin/mtouch generates error ld: framework not found Carbon

Environment

Embeddinator-4000 v0.1 (master: d844aca)

Build Logs

mono ./objcgen.exe -c --gen=Obj-C --platform=iOS --target=framework -o ./Output LibraryTest1.dll Parsing assemblies... Parsed 'LibraryTest1.dll' Processing assemblies... 1 types found Generating binding code... Generated: ./Output/bindings.h Generated: ./Output/bindings-private.h Generated: ./Output/bindings.m Generated: ./Output/bindings.xml Generated: ./Output/embeddinator.h Generated: ./Output/glib.h Generated: ./Output/mono_embeddinator.h Generated: ./Output/mono-support.h Generated: ./Output/objc-support.h Generated: ./Output/glib.c Generated: ./Output/mono_embeddinator.c Generated: ./Output/objc-support.m Generated: ./Output/Make.config Compiling binding code... Found Mono 6.10.0.104 (between 5.16.0.221 and 5.16.0.221) Found Xamarin.iOS 13.18.2.1 (between 12.2.1.12 and 12.2.1.12) xcode-select -p xcrun clang -O2 -fobjc-arc -ObjC -Wall -arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk -miphoneos-version-min=10.0 -I/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/SDKs/MonoTouch.iphoneos.sdk/usr/include -DXAMARIN_IOS -DMONO_EMBEDDINATOR_DLL_EXPORT -c ./Output/glib.c -o ./Output/armv7/glib.o xcrun clang -O2 -fobjc-arc -ObjC -Wall -arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk -miphoneos-version-min=10.0 -I/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/SDKs/MonoTouch.iphoneos.sdk/usr/include -DXAMARIN_IOS -DMONO_EMBEDDINATOR_DLL_EXPORT -c ./Output/mono_embeddinator.c -o ./Output/armv7/mono_embeddinator.o xcrun clang -O2 -fobjc-arc -ObjC -Wall -arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk -miphoneos-version-min=10.0 -I/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/SDKs/MonoTouch.iphoneos.sdk/usr/include -DXAMARIN_IOS -DMONO_EMBEDDINATOR_DLL_EXPORT -c ./Output/objc-support.m -o ./Output/armv7/objc-support.o xcrun clang -O2 -fobjc-arc -ObjC -Wall -arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk -miphoneos-version-min=10.0 -I/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/SDKs/MonoTouch.iphoneos.sdk/usr/include -DXAMARIN_IOS -DMONO_EMBEDDINATOR_DLL_EXPORT -c ./Output/bindings.m -o ./Output/armv7/bindings.o xcrun ar cru ./Output/armv7/LibraryTest1.a ./Output/armv7/glib.o ./Output/armv7/mono_embeddinator.o ./Output/armv7/objc-support.o ./Output/armv7/bindings.o xcrun clang -O2 -fobjc-arc -ObjC -Wall -arch armv7s -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk -miphoneos-version-min=10.0 -I/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/SDKs/MonoTouch.iphoneos.sdk/usr/include -DXAMARIN_IOS -DMONO_EMBEDDINATOR_DLL_EXPORT -c ./Output/glib.c -o ./Output/armv7s/glib.o xcrun clang -O2 -fobjc-arc -ObjC -Wall -arch armv7s -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk -miphoneos-version-min=10.0 -I/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/SDKs/MonoTouch.iphoneos.sdk/usr/include -DXAMARIN_IOS -DMONO_EMBEDDINATOR_DLL_EXPORT -c ./Output/mono_embeddinator.c -o ./Output/armv7s/mono_embeddinator.o xcrun clang -O2 -fobjc-arc -ObjC -Wall -arch armv7s -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk -miphoneos-version-min=10.0 -I/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/SDKs/MonoTouch.iphoneos.sdk/usr/include -DXAMARIN_IOS -DMONO_EMBEDDINATOR_DLL_EXPORT -c ./Output/objc-support.m -o ./Output/armv7s/objc-support.o xcrun clang -O2 -fobjc-arc -ObjC -Wall -arch armv7s -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk -miphoneos-version-min=10.0 -I/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/SDKs/MonoTouch.iphoneos.sdk/usr/include -DXAMARIN_IOS -DMONO_EMBEDDINATOR_DLL_EXPORT -c ./Output/bindings.m -o ./Output/armv7s/bindings.o xcrun ar cru ./Output/armv7s/LibraryTest1.a ./Output/armv7s/glib.o ./Output/armv7s/mono_embeddinator.o ./Output/armv7s/objc-support.o ./Output/armv7s/bindings.o xcrun clang -O2 -fobjc-arc -ObjC -Wall -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk -miphoneos-version-min=10.0 -I/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/SDKs/MonoTouch.iphoneos.sdk/usr/include -DXAMARIN_IOS -DMONO_EMBEDDINATOR_DLL_EXPORT -c ./Output/glib.c -o ./Output/arm64/glib.o xcrun clang -O2 -fobjc-arc -ObjC -Wall -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk -miphoneos-version-min=10.0 -I/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/SDKs/MonoTouch.iphoneos.sdk/usr/include -DXAMARIN_IOS -DMONO_EMBEDDINATOR_DLL_EXPORT -c ./Output/mono_embeddinator.c -o ./Output/arm64/mono_embeddinator.o xcrun clang -O2 -fobjc-arc -ObjC -Wall -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk -miphoneos-version-min=10.0 -I/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/SDKs/MonoTouch.iphoneos.sdk/usr/include -DXAMARIN_IOS -DMONO_EMBEDDINATOR_DLL_EXPORT -c ./Output/objc-support.m -o ./Output/arm64/objc-support.o xcrun clang -O2 -fobjc-arc -ObjC -Wall -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk -miphoneos-version-min=10.0 -I/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/SDKs/MonoTouch.iphoneos.sdk/usr/include -DXAMARIN_IOS -DMONO_EMBEDDINATOR_DLL_EXPORT -c ./Output/bindings.m -o ./Output/arm64/bindings.o xcrun ar cru ./Output/arm64/LibraryTest1.a ./Output/arm64/glib.o ./Output/arm64/mono_embeddinator.o ./Output/arm64/objc-support.o ./Output/arm64/bindings.o xcrun lipo ./Output/armv7/LibraryTest1.a ./Output/armv7s/LibraryTest1.a ./Output/arm64/LibraryTest1.a -create -output ./Output/iPhoneOS/LibraryTest1.a xcrun --show-sdk-version --sdk iphoneos /Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin/mtouch --dev /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/LibraryTest1 --abi=armv7,armv7s,arm64 --sdkroot /Applications/Xcode.app --targetver 10.0 --dsym:false --msym:false --embeddinator /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/LibraryTest1.dll -r:/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/lib/mono/Xamarin.iOS/Xamarin.iOS.dll --sdk 13.5 --linksdkonly --xml=./Output/bindings.xml --registrar:static --cache /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache --assembly-build-target=@all=framework=LibraryTest1.framework --target-framework Xamarin.iOS,v1.0 "--gcc_flags=-force_load /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/LibraryTest1.a" Xamarin.iOS 13.18.2.1 (d16-6): 29c4ea731 using framework: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk Compilation failed with code 1, command: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -framework Security -framework UIKit -framework Foundation -weak_framework Carbon -weak_framework CFNetwork -weak_framework GSS -Xlinker -rpath -Xlinker @executable_path/ /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/arm64/LibraryTest1.dll.o /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/arm64/mscorlib.dll.o /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/arm64/Xamarin.iOS.dll.o /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/arm64/System.dll.o /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/arm64/System.Drawing.dll.o /Library/Frameworks/Xamarin.iOS.framework/Versions/13.18.2.1/SDKs/MonoTouch.iphoneos.sdk/usr/lib/libmonosgen-2.0.a /Library/Frameworks/Xamarin.iOS.framework/Versions/13.18.2.1/SDKs/MonoTouch.iphoneos.sdk/usr/lib/libxamarin.a /Library/Frameworks/Xamarin.iOS.framework/Versions/13.18.2.1/SDKs/MonoTouch.iphoneos.sdk/usr/lib/libmono-native-unified.a /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/arm64/registrar.o /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/arm64/main.o -force_load /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/LibraryTest1.a -lz -liconv -lz -gdwarf-2 -std=c++14 -I/Library/Frameworks/Xamarin.iOS.framework/Versions/13.18.2.1/SDKs/MonoTouch.iphoneos.sdk/usr/include -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk -Qunused-arguments -miphoneos-version-min=10.0 -arch arm64 -shared -lz -liconv -install_name @rpath/LibraryTest1.framework/LibraryTest1 -fapplication-extension -o /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/arm64/LibraryTest1 ld: framework not found Carbon clang: error: linker command failed with exit code 1 (use -v to see invocation) Compilation failed with code 1, command: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -framework Security -framework UIKit -framework Foundation -weak_framework Carbon -weak_framework CFNetwork -weak_framework GSS -Xlinker -rpath -Xlinker @executable_path/ /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/armv7/LibraryTest1.dll.o /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/armv7/mscorlib.dll.o /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/armv7/Xamarin.iOS.dll.o /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/armv7/System.dll.o /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/armv7/System.Drawing.dll.o /Library/Frameworks/Xamarin.iOS.framework/Versions/13.18.2.1/SDKs/MonoTouch.iphoneos.sdk/usr/lib/libmonosgen-2.0.a /Library/Frameworks/Xamarin.iOS.framework/Versions/13.18.2.1/SDKs/MonoTouch.iphoneos.sdk/usr/lib/libxamarin.a /Library/Frameworks/Xamarin.iOS.framework/Versions/13.18.2.1/SDKs/MonoTouch.iphoneos.sdk/usr/lib/libmono-native-unified.a /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/armv7/registrar.o /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/armv7s/registrar.o /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/armv7/main.o /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/armv7s/main.o -force_load /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/LibraryTest1.a -lz -liconv -lz -gdwarf-2 -std=c++14 -I/Library/Frameworks/Xamarin.iOS.framework/Versions/13.18.2.1/SDKs/MonoTouch.iphoneos.sdk/usr/include -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk -Qunused-arguments -miphoneos-version-min=10.0 -arch armv7 -shared -read_only_relocs suppress -lz -liconv -install_name @rpath/LibraryTest1.framework/LibraryTest1 -fapplication-extension -o /Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/armv7/LibraryTest1 ld: framework not found Carbon clang: error: linker command failed with exit code 1 (use -v to see invocation) error MT5216: Native linking failed for '/Users/lukasz/Desktop/aaaaa/Embeddinator-4000/objcgen/bin/Debug/Output/iPhoneOS/build-cache/arm64/LibraryTest1'. Please file a bug report at https://github.com/xamarin/xamarin-macios/issues/new

Done

Example Project (If Possible)

LibraryTest1.zip