theos-jailed icon indicating copy to clipboard operation
theos-jailed copied to clipboard

libsubstrate.dylib for arm64

Open lemonhead94 opened this issue 9 years ago • 11 comments

Hey Guys when I try to compile a tweak for arm64 Architecture, I get the following error message. Could it be, that you guys forgot to upload the right libsubstrate.dylib?

Makefile: ARCHS = arm64

[...]libsubstrate.dylib, file was built for armv7 which is not the architecture being linked (arm64):[...]

lemonhead94 avatar Jun 23 '15 19:06 lemonhead94

Hi, no we didn't forget - we don't support 64bit right now. As a workaround you can use lipo to extract the armv7 binary from an app, thereby removing the 64bit version of the app. Theos-jailed will work with that. If you really, truly need 64bit I'm afraid you're out of luck for now.

0xhaggis avatar Aug 17 '15 02:08 0xhaggis

Will a lipo'd 32-bit only binary run on an iPhone 5s or other 64-bit device?

hubert3 avatar Aug 17 '15 05:08 hubert3

Yes, I'm currently doing it on an iPhone 6.

0xhaggis avatar Aug 17 '15 08:08 0xhaggis

What's the difference? Does this give us the possibility to use arm64 dylibs in the ipa? Cuz that would be awesome!!

Dry05 avatar Apr 10 '16 08:04 Dry05

Could you please explain how to do it again? I did what you said but I think it's not how it's supposed to work could explain a bit less complicated or send me an email?

Dry05 avatar Apr 11 '16 07:04 Dry05

hi I used your way now my output after the dylib is this: Making all for tweak BDaySpotify2... Linking tweak BDaySpotify2... ld: warning: invalid -install_name (@executable_path/CydiaSubstrate) in dependent dylib (/Users/Scrouble/spotifypatch/theos/lib/libsubstrate.dylib). Dylibs/frameworks which might go in dyld shared cache cannot link with dylib that uses @rpath, @loader_path, etc. ld: warning: invalid -install_name (@executable_path/CydiaSubstrate) in dependent dylib (/Users/Scrouble/spotifypatch/theos/lib/libsubstrate.dylib). Dylibs/frameworks which might go in dyld shared cache cannot link with dylib that uses @rpath, @loader_path, etc. ld: warning: invalid -install_name (@executable_path/CydiaSubstrate) in dependent dylib (/Users/Scrouble/spotifypatch/theos/lib/libsubstrate.dylib). Dylibs/frameworks which might go in dyld shared cache cannot link with dylib that uses @rpath, @loader_path, etc. when injecting this dylib into the ipa it still crashes pls help one more time

Dry05 avatar Apr 11 '16 19:04 Dry05

i already did i think this does the same thing when using lipo separately so arm64 code in the dylibs we compile is still not supported i hope the original developers of these-jailed update it soon for 64bit devices

Dry05 avatar Apr 12 '16 13:04 Dry05

yeah but wait in your modified theos-jailed you included lipo -thin armv7 so it's automatically armv7 Ripa only or is there another option?

Dry05 avatar Apr 12 '16 17:04 Dry05

So I need to remove the -thin line from the patchapp.sh file?

Dry05 avatar Apr 13 '16 16:04 Dry05

Ahhh thx so much man great!

Dry05 avatar Apr 14 '16 07:04 Dry05

it's still not working the same warning as i said earlier when compiling de dylib and when i start the app it crashes

Dry05 avatar Apr 14 '16 17:04 Dry05