

- #MAKEFILE CROSS COMPILE C STATIC LIBRARY LINUX MAC OS CGO INSTALL#
- #MAKEFILE CROSS COMPILE C STATIC LIBRARY LINUX MAC OS CGO SOFTWARE#

Also, it manages resources and offers powerful dev tools.
#MAKEFILE CROSS COMPILE C STATIC LIBRARY LINUX MAC OS CGO SOFTWARE#
It lets you build software in a well defined sandbox, and only the binaries are linked into your PATH, GNU Stow style. musl is specifically engineered to support fully static binaries, which is not recommended with glibc. However, if you build them as static binaries by passing -static as a LDFLAG they will run anywhere, including in scratch Docker containers. This means that the binaries will only run on a musl-based system, like Alpine. Maybe most importantly, it's based on the musl C standard library. Also, it can target Linux running on a number of different architectures. Musl-cross-make builds beautifully self-contained cross-compilers, so you don't have to worry about pointing to the right libraries path or about where you keep the toolchain. It took a few patches, but it runs well on macOS. Thankfully, Rich Felker built a Makefile set to build musl-based cross-compilers, musl-cross-make. While in Go you just need to set an environment variable, for C you need a whole separate toolchain, that might require an intermediate toolchain to build, and you need to know what you are targeting very well.
#MAKEFILE CROSS COMPILE C STATIC LIBRARY LINUX MAC OS CGO INSTALL#
brew install FiloSottile/musl-cross/musl-cross Tl dr: you can install cross-compiler toolchains to compile C/C++ for Windows or Linux from macOS with these two Homebrew Formulas.

Easy Windows and Linux cross-compilers for macOS
