#!/usr/bin/env bash
# runasm - Assemble, link, and run multiple assembly files, then delete them.
if [[ $# -eq 0 ]]; then
echo "Usage: runasm [ ...]"
echo " - Assemble, link, and run multiple assembly files, then delete them."
echo " - Name of executable is the name of the first file without extension."
exit 1
fi
object_files=()
executable_file=${1%.*}
for assembly_file in "$@"; do
# Avengers, assemble!
object_file="${assembly_file%.*}.o"
as "${assembly_file}" -o "${object_file}"
if [[ $? -ne 0 ]]; then
exit 1
fi
object_files+=("${object_file}")
done
# Link
ld "${object_files[@]}" -o "${executable_file}"
if [[ $? -ne 0 ]]; then
exit 1
fi
# Run, remove created files, and return exit code
./"${executable_file}"
exit_code=$?
rm "${object_files[@]}" "${executable_file}" > /dev/null 2>&1
exit "${exit_code}"
I have two reactions: 1. The headline is rather silly. 2. There’s no way this little script, although it might conceivably be useful to someone, needs to be a youtube video.
Isn’t the whole point of assembly that there is no compiler?
Right, they just use an assembler and a linker …
I mean they’re not wrong…
This is why my next book will be titled “how to cook dinner without a compiler, GCC 4 to GCC 11 compatible!”
I was going to click on this until I saw it was a video.
I need this on a t-shirt
I’m still super confused by this user’s posts lol. I get that (some? most?) of it is satire… but then why all social media engagement farming hashtag nonsense? Or is this all part of the satire…?
Perhaps we should reconsider the definition of write-only scripts.
Here is an alternative Piped link(s):
https://piped.video/watch?v=kNKuRdoaNII
Piped is a privacy-respecting open-source alternative frontend to YouTube.
I’m open-source; check me out at GitHub.