musl-cross-make
cosmonim
musl-cross-make | cosmonim | |
---|---|---|
1 | 3 | |
10 | 116 | |
- | - | |
0.0 | 2.5 | |
7 months ago | about 1 year ago | |
Nim | ||
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
musl-cross-make
-
Patching GCC to Build Portable Executables
I wrote this post: the title should be "Patching GCC to build Actually Portable Executables", because it refers to Cosmopolitan Libc and jart's Actually Portable Executable format.
With my gcc patch, you can now build software like vim, emacs, ninja, bash, git, gcc etc with Cosmopolitan Libc, via their usual autotools/cmake-style build system. The built executables should run on Linux, FreeBSD, MacOS, OpenBSD, NetBSD, and also Windows (although I haven't tested Windows yet.)
Here's a list of software I got to build with this technique: https://github.com/ahgamut/superconfigure
The superconfigure script is just a wrapper around the usual configure script used to build your software, supplying flags like --enable-static.
If you want to build gcc using Cosmopolitan Libc -- try out this repo: https://github.com/ahgamut/musl-cross-make/tree/gccbuild
cosmonim
-
D Programming Language
In a word, yes.
In more words: You should be able to use Cosmopolitan libc: https://github.com/Yardanico/cosmonim
If something does not work for you, Yardanico is super duper helpful in all things Nim.
Nim also compiles to Javascript (nim js) and C++ for integration with legacy codebases, but that is probably more to the side of your interests.
-
Patching GCC to Build Portable Executables
I haven't used Nim much, but I remember a repo on Github had setup a build script for compiling Nim with Cosmopolitan Libc. https://github.com/Yardanico/cosmonim
This gcc patch makes such build scripts simpler, because you will need to change less of your code -- let me know how it works!
- Using Cosmopolitan Libc with Nim
What are some alternatives?
superconfigure - wrap autotools configure scripts to build with Cosmopolitan Libc
rust-ape-example - A simple example with Rust and Cosmopolitan Libc
ripgrep - ripgrep recursively searches directories for a regex pattern while respecting your gitignore
blink - tiniest x86-64-linux emulator
gcc
cosmopolitan - build-once run-anywhere c library
go - The Go programming language
lnav - Log file navigator