Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Linking failing on iOS through Unity #36

Open
Larkooo opened this issue Jan 26, 2024 · 1 comment
Open

Linking failing on iOS through Unity #36

Larkooo opened this issue Jan 26, 2024 · 1 comment

Comments

@Larkooo
Copy link

Larkooo commented Jan 26, 2024

Linking seems to be failing exclusively on iOS when attempting to build our Unity project to iOS (through xcode), here's the log output;

I have a rust FFI library which uses libp2p that we compile to various platforms for Unity, it is compiled as a staticlib for iOS

Ld /Users/nasr/Library/Developer/Xcode/DerivedData/Unity-iPhone-frevwvwahjowpucoixhprxwxzpzx/Build/Products/ReleaseForRunning-iphoneos/UnityFramework.framework/UnityFramework normal (in target 'UnityFramework' from project 'Unity-iPhone')
    cd /Users/nasr/Dojo/dojo-webgl/dojo-ios
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -Xlinker -reproducible -target arm64-apple-ios12.0 -dynamiclib -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS17.2.sdk -Os -L/Users/nasr/Library/Developer/Xcode/DerivedData/Unity-iPhone-frevwvwahjowpucoixhprxwxzpzx/Build/Intermediates.noindex/EagerLinkingTBDs/ReleaseForRunning-iphoneos -L/Users/nasr/Library/Developer/Xcode/DerivedData/Unity-iPhone-frevwvwahjowpucoixhprxwxzpzx/Build/Products/ReleaseForRunning-iphoneos -L/Users/nasr/Dojo/dojo-webgl/dojo-ios/Libraries -L/Users/nasr/Dojo/dojo-webgl/dojo-ios/Libraries/Dojo/Plugins/iOS -F/Users/nasr/Library/Developer/Xcode/DerivedData/Unity-iPhone-frevwvwahjowpucoixhprxwxzpzx/Build/Intermediates.noindex/EagerLinkingTBDs/ReleaseForRunning-iphoneos -F/Users/nasr/Library/Developer/Xcode/DerivedData/Unity-iPhone-frevwvwahjowpucoixhprxwxzpzx/Build/Products/ReleaseForRunning-iphoneos -filelist /Users/nasr/Library/Developer/Xcode/DerivedData/Unity-iPhone-frevwvwahjowpucoixhprxwxzpzx/Build/Intermediates.noindex/Unity-iPhone.build/ReleaseForRunning-iphoneos/UnityFramework.build/Objects-normal/arm64/UnityFramework.LinkFileList -install_name @rpath/UnityFramework.framework/UnityFramework -Xlinker -rpath -Xlinker @executable_path/Frameworks -Xlinker -rpath -Xlinker @loader_path/Frameworks -Xlinker -map -Xlinker /Users/nasr/Library/Developer/Xcode/DerivedData/Unity-iPhone-frevwvwahjowpucoixhprxwxzpzx/Build/Intermediates.noindex/Unity-iPhone.build/ReleaseForRunning-iphoneos/UnityFramework.build/UnityFramework-LinkMap-normal-arm64.txt -dead_strip -Xlinker -object_path_lto -Xlinker /Users/nasr/Library/Developer/Xcode/DerivedData/Unity-iPhone-frevwvwahjowpucoixhprxwxzpzx/Build/Intermediates.noindex/Unity-iPhone.build/ReleaseForRunning-iphoneos/UnityFramework.build/Objects-normal/arm64/UnityFramework_lto.o -stdlib\=libc++ -fobjc-arc -fobjc-link-runtime -weak_framework CoreMotion -weak-lSystem -liPhone-lib -framework Metal -framework Security -framework MediaToolbox -framework CoreText -framework AudioToolbox -weak_framework AVFoundation -framework AVKit -framework CFNetwork -framework CoreGraphics -framework CoreMedia -weak_framework CoreMotion -framework CoreVideo -framework Foundation -framework OpenAL -framework QuartzCore -framework SystemConfiguration -framework UIKit -lGameAssembly -liconv.2 -ldojo_c -lil2cpp /Users/nasr/Dojo/dojo-webgl/dojo-ios/Libraries/baselib.a -weak_framework GameController -Xlinker -dependency_info -Xlinker /Users/nasr/Library/Developer/Xcode/DerivedData/Unity-iPhone-frevwvwahjowpucoixhprxwxzpzx/Build/Intermediates.noindex/Unity-iPhone.build/ReleaseForRunning-iphoneos/UnityFramework.build/Objects-normal/arm64/UnityFramework_dependency_info.dat -o /Users/nasr/Library/Developer/Xcode/DerivedData/Unity-iPhone-frevwvwahjowpucoixhprxwxzpzx/Build/Products/ReleaseForRunning-iphoneos/UnityFramework.framework/UnityFramework

This seems to be ok ^ the SystemConfiguration framework is getting linked.

ld: Undefined symbols:
  _kSCNetworkInterfaceTypeIrDA, referenced from:
      system_configuration::network_configuration::SCNetworkInterfaceType::from_cfstring::h7ee7b9e19efb0829 in libdojo_c.a[568](system_configuration-aed9a593acad74b5.system_configuration.fbf71c411ff7febe-cgu.0.rcgu.o)
clang: error: linker command failed with exit code 1 (use -v to see invocation)

However, this interface seems to be undefined. I looked it up and it seems like it's deprecated, maybe it has something to do with that?

@xtwist
Copy link

xtwist commented Feb 26, 2024

It appears to be caused by the version of the system-configuration crate. Check this reply

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants