cctools-port

Apple cctools port for Linux, *BSD and Windows (Cygwin)

  • Owner: tpoechtrager/cctools-port
  • Platform:
  • License::
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

Apple cctools and ld64 port for Linux, FreeBSD and macOS

Current Version: cctools: 927.0.2, ld64: 450.3.
Originally ported by cjacker.

SUPPORTED HOSTS

SUPPORTED OPERATING SYSTEMS:

Linux, Android (Termux), FreeBSD,
Mac OS X, iOS, OpenBSD and NetBSD

SUPPORTED HOST ARCHITECTURES:

x86, x86_64, arm, arm64/aarch64

SUPPORTED TARGET ARCHITECTURES

armv6, armv7, armv7s, arm64, arm64e,
arm64_32 (untested), i386, x86_64, x86_64h,
armv6m, armv7k, armv7m and armv7em

arm64e requires Apple LLVM/Clang.

SUPPORTED TARGET OPERATING SYSTEMS

Mac OS X, iOS, watchOS (untested) and tvOS (untested)

DEPENDENCIES

Clang 3.4+

SDKs with .tdb stubs (>= Xcode 7) require the TAPI library to be installed.
=> https://github.com/tpoechtrager/apple-libtapi

musl-libc based systems require the musl-fts library to be installed.
=> https://github.com/pullmoll/musl-fts

Optional, but recommended:

llvm-devel (For Link Time Optimization Support)
uuid-devel (For ld64 -random_uuid Support)
llvm-devel + xar-devel (For ld64 -bitcode_bundle Support)

You can find xar here.
Do not install libxar-dev on Ubuntu, it's a different package.

INSTALLATION

Install Apple's TAPI library:

This step is only required if you intend to use SDKs with .tdb stubs.

git clone https://github.com/tpoechtrager/apple-libtapi.git
cd apple-libtapi
[INSTALLPREFIX=/home/user/cctools] ./build.sh
./install.sh

Install cctools and ld64:

git clone https://github.com/tpoechtrager/cctools-port.git
cd cctools-port/cctools
./configure \
    [--prefix=/home/user/cctools] \
    [--with-libtapi=/home/user/cctools] \
    [--target=<target>] \
    [--with-llvm-config=...]
make
make install

target = i386-apple-darwin11, x86_64-apple-darwin11, arm-apple-darwin11, ...

If you get compile errors because of unistd.h, then please run
../tools/fix_unistd_issue.sh and restart compiling.

TRAVIS CI

Build Status

Main metrics

Overview
Name With Ownertpoechtrager/cctools-port
Primary LanguageC
Program languageC (Language Count: 8)
Platform
License:
所有者活动
Created At2013-11-14 19:40:26
Pushed At2025-04-19 14:04:53
Last Commit At2024-09-14 13:15:55
Release Count10
Last Release Namecctools-877.8-ld64-253.9-1 (Posted on )
First Release Namecctools-845-ld64-134.9-1 (Posted on )
用户参与
Stargazers Count751
Watchers Count42
Fork Count169
Commits Count343
Has Issues Enabled
Issues Count99
Issue Open Count22
Pull Requests Count47
Pull Requests Open Count4
Pull Requests Close Count18
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private