Skip to content

DianaChen/mclinker

Repository files navigation

MCLinker

An LLVM Linker for Mobile Computing

About

MCLinker is a full-fledged system linker for mobile devices. Hence it is fast, small with low memory footprints. MCLinker leverages the LLVM to link object files, and generate shared objects or executable files. Code in MCLinker project is licensed under the "UIUC" BSD-Style license which is compatible with commercial products.

Reliability

Following systems can be linked successfully

  • ARM Android (4.2+) kernel and system image
  • FreeBSD buildworld and buildkernel for i386 targets
  • ARM Linux kernel 3.x

Supported Environment

  • Target Platforms: AArch64, ARM, X86, X86_64, x32, MIPS32, MIPS64 and Hexagon machines
  • Host OS: X86/X86_64 Linux, Android, Mac OS X and Windows
  • For Android NDK r9 and above, developers can simply use -fuse-ld=mcld to link JNI programs by MCLinker

Features

  • A system linker
  • GNU ld options compatibility
  • Support cross linking
  • Can be used as a library or a stand-alone tool
  • Support multiple targets
  • Fast, small with low memory footprint

Current Status

Date: 2015/09/11
LLVM: 3.8svn (trunk)
MCLinker: 2.11.0-dev, master branch

Date: 2015/09/11
LLVM: 3.8svn (trunk@246954)
MCLinker: 2.10.0-rc, release_210 branch

Next Milestone

  • ARM exception handling format enhancement
  • TLS
  • Plugin support (LTO)
  • Version script support
  • To be one of system linkers of BSD platform

Code License

University of Illinois/NCSA
Open Source License

About

mirror mclinker

Resources

License

Unknown, Unknown licenses found

Licenses found

Unknown
COPYING
Unknown
LICENSE.TXT

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published