Quote from nidud: I added a bootstrap repository for Asmc.
The bootstrap variant for Linux is now available in Debian and 7zip AMD64 is finally built with assembler enabled. https://packages.debian.org/sid/asmc-linux https://packages.debian.org/sid/7zip
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1091341
Works for me: git clone https://github.com/nidud/asmc_linux cd asmc_linux # bootstrap make cd .. git clone --depth 1 https://github.com/nidud/asmc cd asmc/source/asmc # stage0 ../../../asmc_linux/asmc -c -elf64 -fpic -Cs -Iinc -I../../include -Zp8 src/*.asm gcc *.o -o asmc0 -Wl,-z,noexecstack -s rm *.o # stage 1 ./asmc0 -Cs -Iinc -I../../include -Zp8 -elf64 -fpic src/*.asm -link -o asmc -s -Wl,-pie,-z,now,-z,noexecstack rm *.o ./asmc0 -DASMC64 -Cs -Iinc -I../../include -Zp8 -elf64 -fpic src/*.asm...
NASM can be installed with winget command. It's only a small binary. You could even include it as source or binary if you really want to (BSD license).
Projects like FFmpeg and x264 use NASM compatible assembler and that code is always assembled with NASM on Debian and Ubuntu. NASM is listed as a build dependency: https://packages.ubuntu.com/source/oracular/ffmpeg https://packages.ubuntu.com/source/oracular/x264 Update: BTW you can use Agner Fog's objconv to translate the code to NASM dialect. mkdir nasm for f in *Opt.asm ; do uasm -nologo -elf64 -DABI_LINUX -Fonasm/ $f done cd nasm for f in *.o ; do objconv -fnasm $f rm $f done
Here it is, basically what I have already said: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1001111#15 uasm's license is against the Debian Free Software Guidelines and ASMC needs to be bootstrappable without binary blobs. :-(
Those patches are mine. It now builds on recent clang and gcc, that's enough. Interesting comment from that guy. as far as I can tell from my albeit limited perspective Very limited indeed. Linux is a piece of sh1t It has its weaknesses. and designed by C programmers True. Linux and Glibc are already pretty huge (if not bloated) so how would writing it in ASM benefit? :-) who clearly hate assembly language UASM is written in C :-) With nested switch-case-statements, dangling else-statements and a...