This is the mail archive of the crossgcc@sourceware.cygnus.com mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more infromation.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
I am struggelig to compile a `i486-linux' to `powerpc-wrs-vxworks' gcc-2.95.2 crosscompiler. Minor annoyance, as usual, the compiler will not automatically find the cross-binutils in the obvious `$(prefix)/bin' location. Cross-binutils which, btw, had to be configured and compiled as `powerpc-wrs-elf32.' (I am not even confident elf32 is correct for VxWorks, especially since the vxworks docs mention some "munching" technique for C++ constructor/destructor lists. This sounds suspiciously like collect2 to me. ELF otoh supports `.init' sections containing pointers to constructors/destructors functions the program loader is supposed to handle before/after running main(). Whatever.) Anyway, I patched the `vxworks-' part of the xgcc Makefile entry `program_transform_name = -e s,^,powerpc-wrs-vxworks-' to read `elf32-' rather than change the `exec-prefix' in binutils and then put `/prefix/bin' into the path. Meaning change of policy request? Unfortunately, somewhere in the Makefile xgcc use the plain vanilla 'as' name rather than `powerpc-wrs-elf32-as.' Meaning bug report. But this I can handle as `i486-as' and `powerpc-as' will strympe on each others assembly files, giving me a chance to supply/not supply a `as -> powerpc-wrs-elf32-as' soft link and rerun make. What I do not get at all is how I am supposed to supply the large amounts of vxworks header files. The gcc documentation states that they are supposed to go into the `/usr/local/target/include' directory. I have placed the vxworks header files into the directory `/usr/local/powerpc-wrs-elf32/include' and made a soft link from `/usr/local/powerpc-wrs-vxworks' to `/usr/local/powerpc-wrs-elf32.' Neither works. Neither does `/prefix/include.' That I can understand. But given that `/usr/local' is the default prefix choise, then `/prefix/target/include' ougth to work too. Does not. Apparently, fixproto is never run. How do I find what string is actually used for `target' from the Makefile or various `configure' files? The only location that does work is in the (separate) build directory `/gcc-install/gcc-obj/gcc-2.95.2-ppc/gcc/.....' This is not where I want to place the bulk of vxworks header files. I would rather prefer fixproto to extract only the ones I actually need. How do I find out what fixproto does from the Makefile? I would like to patch the controlling variables rather than change every cross compilation include path. ****************************************************** Never ever underestimate the power of human stupidity. -Robert Anson Heinlein GeirFRS@invalid.and.so.forth ****************************************************** ------ Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/ Want to unsubscribe? Send a note to crossgcc-unsubscribe@sourceware.cygnus.com
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |