I want to use newlib instead of glibc to compile small static binaries. (I'm not going to cross-compile, since binaries must be used by the same computer.) I believe I need to build a separate gcc for this?
I compiled gcc:
./configure --prefix = / home / myuser / Desktop / gcc-4.4.5 --libexecdir = / home / myuser / Desktop / gcc-4.4.5 --libdir = / home / myuser / Desktop / gcc-4.4. 5 --with-gxx-include-dir = / home / myuser / Desktop / gcc-4.4.5 --enable-languages = c --enable-libmudflap --disable-multilib --disable-libssp --disable-nls --with-newlib --with-gnu-as --with-gnu-ld --with-system-zlib
make
It compiled without errors, but now when I try to compile a simple Hello World! the program wants to use the headers from / usr instead of the path above. Here are some of the errors:
In file included from /home/myprogram/Desktop/myprogram.c:1:
/usr/include/stdio.h:34:21: error: stddef.h: No such file or directory
In file included from /usr/include/stdio.h:75,
from /home/myprogram/Desktop/myprogram.c:1:
/usr/include/libio.h:53:21: error: stdarg.h: No such file or directory
In file included from /usr/include/stdio.h:75,
from /home/myprogram/Desktop/myprogram.c:1:
/usr/include/libio.hhaps32: error: expected specifier-qualifier-list before 'size_t'
/usr/include/libio.hhaps64: error: expected declaration specifiers or '...' before 'size_t'
/usr/include/libio.hhaps73: error: expected declaration specifiers or '...' before 'size_t'
What am I doing wrong? Is compiling a new gcc necessary or can I use my existing gcc and use newlib instead of glibc ???
Ian mccormick
source share