Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Removing system dependencies #14

Open
trgwii opened this issue Nov 29, 2024 · 0 comments
Open

Removing system dependencies #14

trgwii opened this issue Nov 29, 2024 · 0 comments

Comments

@trgwii
Copy link
Member

trgwii commented Nov 29, 2024

The main goal of doing this is to make the project easier to build on various
platforms, easier to debug, and overall more stable.

Relying on system dependencies is implicitly the same as relying on your
specific OS. I don't know which OS was originally used to develop ivm-apps. I was told it was "some version of Ubuntu".

For my host and Docker container versions, I am using Debian 12.7 (Docker image
version:
debian:12.7-slim@sha256:36e591f228bb9b99348f584e83f16e012c33ba5cad44ef5981a1d7c0a93eca22).

The dependencies and versions I had to install are listed here:

Name Version Description Remove?
autoconf 2.71-3 autotools (also includes automake), creates scripts out of ./configure.ac templates See Replacing autotools
bsdmainutils 12.1.8 hexdump command needed by ivm-fs used in ROAEshell, this should be replaced with custom code
build-essential 12.9 gcc, ar, ld, other compiler tools
check 0.15.2-2+b1 C test library used by boxing, this should be replaced with custom code or vendored
dotnet-sdk-7.0 7.0.410-1 Needed to build ivm-implementations (F# emulator) ✅ (remove ivm-implementations from this repo)
file 1:5.44-3 Needed by various autotools build scripts? Unsure. Should probably be removed
gawk 1:5.2.1-2 Needed by various autotools build scripts? Unsure. Should probably be removed
git 1:2.39.5-0+deb12u1 Needed to clone sub-repos, required, but code should switch to submodules or something similar
imagemagick 8:6.9.11.60+dfsg-1.6+deb12u2 Needed by testdata repo to convert images, should be removed, converted files can be committed
libpng-dev 1.6.39-2 Needed by yet-another-fast-ivm-emulator to read and output png's ✅ (externalize the dependency on an emulator)
pkgconf 1.8.1-1 Needed by build to get include paths from libraries, maybe removable if autotools is replaced
texlive-full 2022.20230122-3 Needed to convert LaTeX to PDF in ivm-doc ✅ (just remove ivm-doc from this repo)
unzip 6.0-28 Needed to unzip zlib and libjpeg downloads from websites ✅ (find git mirrors to use as submodules?)
xxd 2:9.0.1378- Needed by testdata to generate C header files from binary files, replace or vendor

Most of these are unnecessary and are just shell-utilities used by the build
scripts defined in autotools. Others are only used to generate documentation and
are not very relevant.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant