iosllvmtheos

What's the meaning of LDFLAGS: -Wl,-segalign,4000


So I came across a cydia update notes:

0.9.6010 fixes the 32-bit armv7 slice, which was keeping extensions from loading into Cydia. (Note that, additionally, all 32-bit binaries, in particular extensions, must be recompiled using -WI,-segalign,4000 for iOS 9 due to a change made by Apple. Extensions that have not been recompiled might “get lucky” and work, but they will usually either fail or even crash.)

I want to ask here what's the meaning of each flag -WI, -segalign,4000, especially is it -WI or -Wl? Do we still need it if only for arm64 devices?


Solution

  • Here's the flag bisected into indvidual parts:

    Do we still need it if only for arm64 devices?

    You are referring to an Armv7 specific fix/notes. Unless arm64 is mentioned in the notes too, I imagine that it's safe to assume that that flag is not required for arm64. That's just a guess though.