mirror of
https://github.com/darlinghq/darling.git
synced 2025-03-03 07:18:35 +00:00
76 lines
1.6 KiB
Plaintext
76 lines
1.6 KiB
Plaintext
This is a Mach-O loader for linux.
|
|
|
|
* Usage
|
|
|
|
% make release
|
|
% ./ld-mac mac_binary [options...]
|
|
|
|
You need OpenCFLite (http://sourceforge.net/projects/opencflite/)
|
|
installed if you want to run some programs such as dsymutil.
|
|
opencflite-476.17.2 is recommended.
|
|
|
|
* How to use compiler tool chains of Xcode
|
|
|
|
Get xcode_3.2.6_and_ios_sdk_4.3__final.dmg (or another xcode package).
|
|
|
|
% git clone git@github.com:shinh/maloader.git
|
|
% ./maloader/unpack_xcode.sh xcode_3.2.6_and_ios_sdk_4.3__final.dmg
|
|
% sudo cp -a xcode_3.2.6_and_ios_sdk_4.3__final/root /usr/i686-apple-darwin10
|
|
% cd maloader
|
|
% make release
|
|
% ./ld-mac /usr/i686-apple-darwin10/usr/bin/gcc mach/hello.c
|
|
% ./ld-mac a.out
|
|
|
|
* How to run Mach-O binaries using binfmt_misc
|
|
|
|
% ./binfmt_misc.sh
|
|
% /usr/i686-apple-darwin10/usr/bin/gcc mach/hello.c
|
|
% ./a.out
|
|
|
|
To remove the entries, run the following commands:
|
|
|
|
% ./binfmt_misc.sh stop
|
|
|
|
* Which programs should work
|
|
|
|
OK
|
|
|
|
- gcc-4.2 (link with -g requires OpenCFLite)
|
|
- otool
|
|
- nm
|
|
- dyldinfo
|
|
- dwarfdump
|
|
- strip
|
|
- size
|
|
- dsymutil (need OpenCFLite)
|
|
- cpp-4.2
|
|
- clang
|
|
-- clang-70 (xcode 3.2.6): OK, but linking wasn't checked due to lack of sysroot
|
|
-- clang-137 (xcode 4.0): OK
|
|
|
|
not OK
|
|
|
|
- llvm-gcc
|
|
- gnumake and bsdmake
|
|
- lex and flex
|
|
- ar
|
|
- m4
|
|
- gdb
|
|
- libtool
|
|
- nasm and ndisasm (i386)
|
|
- mpicc, mpicxx, and mpic++
|
|
|
|
* Notice
|
|
|
|
- Running all Mac binaries isn't my goal. Only command line tools such
|
|
as compiler tool chain can be executed by this loader.
|
|
- Currently, this only supports x86-64.
|
|
|
|
* License
|
|
|
|
Simplified BSD License.
|
|
|
|
Note that all files in "include" directory and some files in "libmac"
|
|
were copied from Apple's Libc-594.9.1.
|
|
http://www.opensource.apple.com/release/mac-os-x-1064/
|