AppsFlyerFramework icon indicating copy to clipboard operation
AppsFlyerFramework copied to clipboard

Xcode 15 linker warnings

Open kattouf opened this issue 2 years ago • 9 comments

Report

SDK Version

6.12.1 integrated via CocoaPods (AppsFlyerFramework/Dynamic)

What did you do?

Compile iOS project with new Xcode 15.0 Beta 6 (15A5219j)

What did you expect to happen?

Compilation completes without warnings

What happened instead?

Compilation competes with following warnings:

ld: warning: duplicate LC_RPATH are deprecated ('@executable_path/Frameworks')
ld: warning: duplicate LC_RPATH are deprecated ('@loader_path/Frameworks')

Please provide any other relevant information.

I manually checked arm64 binary to confirm the warning by printing load commands:

otool -arch arm64 -l Pods/AppsFlyerFramework/binaries/xcframework/dynamic/AppsFlyerLib.xcframework/ios-arm64_armv7/AppsFlyerLib.framework/AppsFlyerLib | rg -A 2 -B 1 LC_RPATH

And got output, where we see that @executable_path/Frameworks and @loader_path/Frameworks are defined twice:

Load command 18
          cmd LC_RPATH
      cmdsize 40
         path @executable_path/Frameworks (offset 12)
Load command 19
          cmd LC_RPATH
      cmdsize 40
         path @loader_path/Frameworks (offset 12)
Load command 20
          cmd LC_RPATH
      cmdsize 40
         path @executable_path/Frameworks (offset 12)
Load command 21
          cmd LC_RPATH
      cmdsize 40
         path @loader_path/Frameworks (offset 12)

Initially Xcode doesn't specify which binary generates this warning, to find out it I copy compile command from Xcode's build log and run it directly in the terminal, adding argument for additional linker logging: -t Logs each file (object, archive, or dylib) the linker loads. Useful for debugging problems with search paths where the wrong library is loaded.

 /Applications/Xcode-15.0.0-Beta.6.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -Xlinker -t ....very long args list....
...
/Users/kattouf/Library/Developer/Xcode/DerivedData/MyApp-cwrffmwjdlzeiyarzpcebcovosub/Build/Products/Debug-iphonesimulator/XCFrameworkIntermediates/AppsFlyerFramework/Dynamic/AppsFlyerLib.framework/AppsFlyerLib
ld: warning: duplicate LC_RPATH are deprecated ('@executable_path/Frameworks')
ld: warning: duplicate LC_RPATH are deprecated ('@loader_path/Frameworks')
...

kattouf avatar Aug 16 '23 08:08 kattouf

I have noticed the same warning as well on beta 8, but only after updating to version 6.12.2. If I use version 6.11.0 with Xcode 15 beta 8 then I do not see this warning.

donnywdavis avatar Sep 08 '23 09:09 donnywdavis

Xcode 15 is coming soon, do you have any updates?

kattouf avatar Sep 13 '23 11:09 kattouf

bump

vg-identance avatar Sep 20 '23 10:09 vg-identance

@kattouf we will fix this issue in the upcoming release of the AppsFlyerSDK

af-obodovskyi avatar Sep 20 '23 10:09 af-obodovskyi

bump

omarzl avatar Oct 02 '23 22:10 omarzl

I'm also interested in a fix here

jszumski avatar Oct 03 '23 00:10 jszumski

I'm waiting for a solution too.

FurkanEmiroglu avatar Oct 03 '23 14:10 FurkanEmiroglu

This might help https://indiestack.com/2023/10/xcode-15-duplicate-library-linker-warnings/

ZevEisenberg avatar Oct 05 '23 13:10 ZevEisenberg

bump

kattouf avatar Nov 28 '23 14:11 kattouf