You just need Brew from brew.sh. macOS Monterey or higher is recommended.
Clone everything you need with git (this will be your build order too):
- libgeneral: https://github.com/tihmstar/libgeneral
- libplist: https://github.com/libimobiledevice/libplist
- img4tool: https://github.com/tihmstar/img4tool
- img3tool: https://github.com/tihmstar/img3tool
- libinsn: https://github.com/tihmstar/libinsn
- libpatchfinder: https://github.com/tihmstar/libpatchfinder
Why do I use libplist from libimobiledevice rather than Homebrew repository? Because libplist on Homebrew is version 2.2 (head repo is not libimobiledevice github + not tested), lower than the required libplist >= 2.3.0 from img{3,4}tool.
Install packages with brew:
- autoconf
- automake
- libtool
- pkg-config
- python
Build everything with these commands:
$ cd <project>
$ ./autogen.sh
$ make install
# go back and build the next project
# imagine you're in a for-loop:)
$ cd ..
If you see Permission error
, use sudo make install
instead of make install
.
If you encountered an error and want to try if your solution worked or not, run ./autogen.sh
.
All projects you build are automake projects, which is used mostly on Linux/BSD. It works like meson: parse + check dependencies, then generate make files.
Happy hacking!