Score:0

How to install i686-elf compiler?

bh flag

I'm starting out writing a (very basic) operating system, using the Osdev wiki. It recommends that I use the i686-elf toolchain, but I've had trouble installing it on my system. I'm running Ubuntu 22.04. I've tried this git repository, but there were various issues, such as having to change all occurrences python to python3 in the i686-elf-tools.sh file, and mxe never being able to successfully build.

Has anybody else managed to get this working?

Edit:

Here's the error it threw:

Failed to build package mxe-conf for target i686-w64-mingw32.static!
---------------------------------------------
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
python --version
bash: line 1: python: command not found
make[1]: *** [Makefile:889: build-only-mxe-conf_i686-w64-mingw32.static] Error 127
make[1]: Leaving directory '/opt/mxe'
real    0m1.880s
user    0m1.838s
sys 0m0.050s
---------------------------------------------
[log]      /opt/mxe/log/mxe-conf_i686-w64-mingw32.static

make: *** [Makefile:888: /opt/mxe/usr/i686-w64-mingw32.static/installed/mxe-conf] Error 1
hr flag
Can you be more specific about the errors you are encountering? The `gcc` target of mxe (cloned from https://github.com/mxe/mxe.git) appeared to build OK on a 22.04 VM after changing python to python3 (or installing the python-is-python3 package) and installing a couple of prerequisites (most notably `libtool-bin`, which doesn't seem to be mentioned in the documentation).
Tyler Selden avatar
bh flag
@steeldriver I edited my post to include the error message.
hr flag
Thanks - so that seems to be the same issue you already encountered in the i686-elf-tools.sh script, i.e. that current versions of Ubuntu do not provide the ambiguous `python` by default. You can either edit the mxe Makefile to refer to `python3` explicitly, or (probably simpler) at least temporarily install the `python-is-python3` package. If (possible given the age of the software) there is some python2-specific syntax, you may need to backtrack and install python2.7 instead (but that doesn't seem to be the case for mxe at least).
I sit in a Tesla and translated this thread with Ai:

mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.