BishopFox / theos-jailed

A version of Theos/CydiaSubstrate for non-jailbroken iOS devices
Other
327 stars 53 forks source link

libsubstrate.dylib for arm64 #3

Open lemonhead94 opened 9 years ago

lemonhead94 commented 9 years ago

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):[...]

0xhaggis commented 9 years ago

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.

hubert3 commented 9 years ago

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

0xhaggis commented 9 years ago

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

Dry05 commented 8 years ago

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

Dry05 commented 8 years ago

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 commented 8 years ago

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 commented 8 years ago

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 commented 8 years ago

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 commented 8 years ago

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

Dry05 commented 8 years ago

Ahhh thx so much man great!

Dry05 commented 8 years ago

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