haarer / toolchain68k

build a toolchain for cross developement. Supports motorola m68k-elf, avr and arm-none-eabi
25 stars 5 forks source link

Undefined reference to fake_stdin, stdout, and stderr #1

Closed thetechknight closed 4 years ago

thetechknight commented 4 years ago

So playing around with this, When compiling the m68k_example, I get the following:

appinit.c:26: undefined reference to `__sf_fake_stdin'

Not entirely sure what the cause of this is. I assume something with newlib, but not sure where to look.

any ideas?

haarer commented 4 years ago

The newlib build was broken, i added this patch to fix it. https://patches-gcc.linaro.org/patch/10140/ I got a totally different error message when i tested it, though.

thetechknight commented 4 years ago

I ended up figuring out how to make it work in some miracle fashon. it kept dumping errors during compilation and compilation was very slow for some reason.

So I took the reent flag from this build script, and put it into another build script, and now I can get the example to compile, although I have not tested yet (Still working on finishing the hardware).

I am new to C toolchains and when googling for examples and options, Everyone has their own method, and their own settings, and every one of them is different, With the lack of example code/program so it made it difficult for me which one to use. Then I found this one which at least had an example program!

Here is the script I used: (Adding the reent flag)

http://www.aaldert.com/outrun/gcc.html

haarer commented 4 years ago

I am confused a Bit now 😀 The Page you are referring to mentions gcc 4.9 and so on. Are you using the tool chain from my GitHub repo at all ?

What ist your Host Platform ?

Am 30. Oktober 2019 12:52:18 MEZ schrieb mbates14 notifications@github.com:

I ended up figuring out how to make it work in some miracle fashon. it kept dumping errors during compilation and compilation was very slow for some reason.

So I took the reent flag from this build script, and put it into another build script, and now I can get the example to compile, although I have not tested yet (Still working on finishing the hardware).

Here is the script I used: (Adding the reent flag)

http://www.aaldert.com/outrun/gcc.html

-- You are receiving this because you commented. Reply to this email directly or view it on GitHub: https://github.com/haarer/toolchain68k/issues/1#issuecomment-547864957

-- Gruß, Alexander

haarer commented 4 years ago

Are you working on developing Software for the outrun board?

Have you considered the platformio Environment ? Together with vscode it is an excellent development Environment .

Am 30. Oktober 2019 12:52:18 MEZ schrieb mbates14 notifications@github.com:

I ended up figuring out how to make it work in some miracle fashon. it kept dumping errors during compilation and compilation was very slow for some reason.

So I took the reent flag from this build script, and put it into another build script, and now I can get the example to compile, although I have not tested yet (Still working on finishing the hardware).

Here is the script I used: (Adding the reent flag)

http://www.aaldert.com/outrun/gcc.html

-- You are receiving this because you commented. Reply to this email directly or view it on GitHub: https://github.com/haarer/toolchain68k/issues/1#issuecomment-547864957

-- Gruß, Alexander

thetechknight commented 4 years ago

No I am developing software for a custom MC68010 device that I had reverse engineered. (it was a proprietary graphics system that is undocumented anywhere, has multiple VMEBus cards, and runs TWO MC68010 CPUs. One on the video card, one on the main CPU card).

I was playing with both toolchains, and then I tried yet another one elsewhere.

I really do not know what I am doing on the C side of things (I know Arduino C stuff, thats it). I am a hardware engineer and just getting into software.

Edit: I can get the machine running on a very bare bones basic level using Assembler, but I would rather use C if I can. So I assume I need to modify BSP and startup files for the C compiler for my particular system.