opa334 / Dopamine

Dopamine is a semi-untethered jailbreak for iOS 15 and 16
MIT License
3.49k stars 2.71k forks source link

Unable to build Dopamine 2.0 (Library error in Xcode, confusing error in terminal) (Fixed) #350

Closed MWRevamped closed 8 months ago

MWRevamped commented 8 months ago

I'm pretty knew with this stuff but most of it seems simple, but this error is confusing, I already had to replace supposed missing files since somehow it couldn't find them, and now I get "Library 'jailbreak' not found, Linker command failed with exit code 1 (use -v to see invocation)" in Xcode, and in terminal I get the error below

"note: Run script build phase 'Run Script' will be run during every build because the option to run the script phase "Based on dependency analysis" is unchecked. (in target 'dmaFail' from project 'Dopamine') /Users/appleinc/Dopamine/Application/Dopamine.xcodeproj: warning: DEFINES_MODULE was set, but no umbrella header could be found to generate the module map (in target 'dmaFail' from project 'Dopamine') note: Run script build phase 'Run Script' will be run during every build because the option to run the script phase "Based on dependency analysis" is unchecked. (in target 'badRecovery' from project 'Dopamine') /Users/appleinc/Dopamine/Application/Dopamine.xcodeproj: warning: DEFINES_MODULE was set, but no umbrella header could be found to generate the module map (in target 'badRecovery' from project 'Dopamine') BUILD FAILED

The following build commands failed: CompileC /Users/appleinc/Dopamine/Application/build/Build/Intermediates.noindex/Dopamine.build/Debug-iphoneos/dmaFail.build/Objects-normal/arm64/dmaFail.o /Users/appleinc/Dopamine/Application/Dopamine/Exploits/dmaFail/dmaFail.c normal arm64 c com.apple.compilers.llvm.clang.1_0.compiler (in target 'dmaFail' from project 'Dopamine') (1 failure) make: *** [build/Build/Products/Debug-iphoneos/Dopamine.app] Error 65"

like I said, I'm kinda new to this so I don't really know what to do here, if you could help I would really appreciate it, thank you for your time!

opa334 commented 8 months ago

you need to run the download_bootstraps.sh script in Resources

MWRevamped commented 8 months ago

you need to run the download_bootstraps.sh script in Resources

It's still giving me the same or a similar looking error though, maybe I ran it wrong? I'm unsure, sorry

opa334 commented 8 months ago

ah, you're also supposed to run make in basebin, or run make in the root directory to get an ipa

MWRevamped commented 8 months ago

when I run make in the very first/root folder I get another error

rm -rf .build mkdir -p .build cp -r _external/basebin/ .build cp _external/basebin/.version .build rm -rf .include mkdir -p .include cp -r _external/include/ .include make[2]: No targets specified and no makefile found. Stop. make[1]: [ChOma] Error 2 make: *** [all] Error 2

I get the same error in BaseBin too

opa334 commented 8 months ago

you need to clone submodules aswell

MWRevamped commented 8 months ago

you need to clone submodules aswell

How can I do that and which ones specifically? (sorry if that's a dumb question)

opa334 commented 8 months ago

by using --recursive when you clone the repo

MWRevamped commented 8 months ago

by using --recursive when you clone the repo

ah alright, I'll try and let you know how it goes, thank you!

MWRevamped commented 8 months ago

I get a different error this time

rm -rf .build mkdir -p .build cp -r _external/basebin/ .build cp _external/basebin/.version .build rm -rf .include mkdir -p .include cp -r _external/include/ .include make[2]: libxpf.dylib' is up to date. /Applications/Xcode.app/Contents/Developer/usr/bin/make -C opainject FINALPACKAGE=1 Makefile:4: /makefiles/common.mk: No such file or directory Makefile:14: /tool.mk: No such file or directory make[2]: *** No rule to make target/tool.mk'. Stop. make[1]: [opainject] Error 2 make: [all] Error 2

at least it's progress

MWRevamped commented 8 months ago

by using --recursive when you clone the repo

I've looked around and I can't figure how to get past this error, have you encountered this or did I mess something up?

MWRevamped commented 8 months ago

turns out I needed theos for some files, but now I get this

Making all for tool opainject… make[5]: Nothing to be done for internal-tool-compile'. make[5]: Nothing to be done forinternal-tool-compile'. /Applications/Xcode.app/Contents/Developer/usr/bin/make -C libjailbreak clang -framework Foundation -framework CoreServices -framework Security -framework IOKit -framework IOSurface -I../.include -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS17.2.sdk -arch arm64 -arch arm64e -miphoneos-version-min=15.0 -fobjc-arc -dynamiclib -install_name @loader_path/libjailbreak.dylib -I/opt/homebrew/opt/libarchive/include -O3 -larchive -lbsm -L../.build -lchoma -o libjailbreak.dylib src/info.c src/jbclient_xpc.c src/jbserver.c src/jbserver_boomerang.c src/kcall_Fugu14.c src/kernel.c src/main.c src/physrw.c src/physrw_pte.c src/primitives.c src/translation.c src/trustcache.c src/util.c src/carboncopy.m src/kalloc_pt.m src/primitives_IOSurface.m src/signatures.m src/util.m src/kcall_Fugu14.S src/util.c:11:10: fatal error: 'archive.h' file not found

include

     ^~~~~~~~~~~

1 error generated. make[2]: [libjailbreak.dylib] Error 1 make[1]: [libjailbreak] Error 2 make: *** [all] Error 2

Do you know what this is?

opa334 commented 8 months ago

brew install libarchive

MWRevamped commented 8 months ago

ah yeah that worked, thank you

MWRevamped commented 8 months ago

Ad-Hoc signing Dopamine xattr -rc build/Build/Products/Debug-iphoneos/Dopamine.app ldid -SDopamine/Dopamine.entitlements build/Build/Products/Debug-iphoneos/Dopamine.app/Dopamine ldid -s build/Build/Products/Debug-iphoneos/Dopamine.app ldid.cpp(3335): _assert(): flag_S make[1]: [Dopamine.ipa] Error 1 make: [all] Error 2

I get this now though, I can make a .tipa with the app in the build files but I'm not sure that would be good

MWRevamped commented 8 months ago

(Also thank you so much for the help)

opa334 commented 8 months ago

https://github.com/ProcursusTeam/ldid

MWRevamped commented 8 months ago

how do I use this to fix the problem exactly? (sorry for the late reply)

opa334 commented 8 months ago

make sure macos uses that one if you run "ldid", also you need this in path https://github.com/CRKatri/trustcache

MWRevamped commented 8 months ago

Ah yea my friend told me to do that for MacOS but idk what you mean by make sure it uses that, should I put it in the same path as where I put trustcache? (sorry for super later reply)

MWRevamped commented 8 months ago

ah I figured it out now, thank you