-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Don't compile examples by default. Rename libc to libc-unused/ #18
Conversation
So it is: make host in toolchain Problem is I need to set c86 variable for make c86. |
Please disable nasm build. If I just do make in the toolchain I get:
|
Maybe you can do a fresh clone of the toolchain and try if it builds. |
Currently |
You can edit libc/c86env.sh for that, and or do that at the same time you set your ELKS and OWC environments:
You're in a first-time bootstrapping issue, which will get better once you have OW and C86 libraries built, unless you do a make clean.
Let me look at that, for some reason NASM is trying to use the elks binaries. I'll push a fix ASAP, otherwise nasm/Makefile.elks and change BINDIR=../host-bin for that as well as nasm32/Makefile.elks. |
Good catch. It seems this has been in @rafael2k's Makefile.elks the whole time, but never was an issue since I'm running the C86 compiler from PATH, which is finding the compiler. Fix coming ASAP. |
Oops - totally wrong on that. It @rafael2k's Makefile.elks is fine. I think the problem is that the elks-bin directory does not exist. Try "mkdir elks-bin" and see what happens. |
That's the problem: "mkdir -p host-bin elks-bin" required before starting. Pushing fix now. |
Well done! It works!!!!!!!!!!!! The only thing that does not work is There must be a tutorial like this:
|
And the Makefile in examples is the host makefile, right? I do:
And I get an execution error. If these are the host compiled binaries, they should work, right? |
The binaries of test and chess are always native ... ? |
I just need to run test and chess in ELKS and verify they run as expected and we are done :) |
You're now cross-compiling, so no, these executables are ELKS executables! If you run 'file' on them, it should say what they are:
BTW, 'file' is available on ELKS itself also and knows about ELKS executables and AS86 .o files.
That's correct, since you are cross-compiling.
Yes, although examples/Makefile.elks has not been maintained, since I am using a different procedure for native compilation. This is yet another issue for discussion in regards to how we should distribute large ELKS images that might have the C86 toolchain and/or games on it, discussed in #2157.
I have verified your 'chess' and 'test' - they are 100% bit identical to my versions, and run on ELKS!
I'll post what needs to be done on another thread. |
@toncho11, see #2159 for a detailed summary of building the 8086 toolchain and C86 libraries. |
As discussed in ghaerr/elks#2112 (comment), a top-level "make" no longer tries to build examples/, since after building the 8086 toolchain, "make c86" must be executed in the ELKS repo (discussed in ghaerr/elks#2158).
Renames libc/ to libc-unused/, since the small C library previously in 8086 toolchain has been replaced by the full ELKS C library built using "make c86" on ELKS.