![]() |
Re: Alternate GCC Toolchain
I'm sorry, I don't full understand what you're telling me to do. I'm not very familiar with the gcc build process. I've just been following the instructions rbmj posted at the beginning of this thread (although they had several issues which I had to correct). Are there other things I ought to be doing?
|
Re: Alternate GCC Toolchain
What are the contents of gcc-master/gcc/DATESTAMP and gcc-master/gcc/BASE-VER?
Edit: Also, to really help, we need to know the complete steps you've taken in trying to build it (you mention you changed some things in rbmj's instructions). Edit2: also, I'm only asking you for the version info so I can tell you to use a newer version. If you're not trying to build a recent _snapshot_ of gcc-4.8, failure is likely. Edit3: FYI, I've used 4.8-20130210 successfully in the build script I posted http://www.chiefdelphi.com/forums/sh...1&postcount=86 Edit4: Looking back at rbmj's original instructions, he uses an archive of the current vcs version (via the git mirror on github), so it should be the latest version. This just means you probably missed something with the headers. I've found that doing the copy & symlink dance is completely unneeded, and omit it in my build script. |
Re: Alternate GCC Toolchain
Sorry it took so long to respond. The sequence of commands I ran (cleaned up a bit without ls's and such) was the following. I added comments to every line I modified.
Code:
mkdir gcc-install-tmpQuote:
Quote:
|
Re: Alternate GCC Toolchain
Your GCC is plenty recent (as I belatedly realized).
It's probably something to do with the copying and symlinking sillyness. I haven't set my own install up like that, rather, I let gcc's configure copy $WIND_BASE/target/h to $PREFIX/sys-include. You could try that Code:
export WIND_BASE=$(realpath -m gccdist/WindRiver/vxworks-6.3)Edit: Make sure that you clear out /usr/powerpc-wrs-vxworks (your PREFIX) completely before trying again. Left over directory setups and files can cause issues. |
Re: Alternate GCC Toolchain
Alright, I tried your suggestion. It got farther this time but now it's failing with this error:
Quote:
|
Re: Alternate GCC Toolchain
Edit: I tried building the current -9999/head/"master" of gcc via my buildscript and had no issues, I suspect that in your case one of the following is the problem:
|
Re: Alternate GCC Toolchain
I completely removed the PREFIX and build directories. I just pulled from the compressed files I downloaded again, to be safe. The configure line I had was:
Code:
../gcc-master/configure \Code:
$(realpath -m gccdist/WindRiver/vxworks-6.3)I also changed my make command from Code:
make -j4[CODE ]make -j4 inhibit_libc=true [/code] per your earlier suggestion. The only useful information I have found about this was that it can sometimes be caused by missing glibc, but I do have the most recent version Gentoo considers stable. Thanks for all the help so far! |
Re: Alternate GCC Toolchain
Just to be sure, you're letting the $(realpath ... ) bit expand when it is assigned to WIND_BASE, right? Meaning that you aren't using single quotes around it, and `echo $WIND_BASE` gives something like '/home/maraschinopanda/alt-gcc/gccdist/WindRiver/vxworks-6.3'?
Can you check that `ls $WIND_BASE` works from the directory you're calling gcc's configure from? Also, I recommend not using /usr as your prefix (especially not when testing), as it is actually used by other programs and removing it will break your system. I prefer using ~/x-tools/wrs (I have some shell setup scripts that add all of ~/x-tools/*/bin to my path). Any unused path is fine (an one in your homedir has the benefit of not needing to install with root privileges). Edit: Note that the glibc you have installed on your system is _not_ going to cause your issue, the compiler for vxworks that you are building does _not_ use glibc at all. |
Re: Alternate GCC Toolchain
I didn't think glibc was the problem, but I thought it was worth mentioning. I didn't remove /usr itself, of course, but I did remove all of the changes the build made. However, I can see why it might be better to use another prefix. I did make certain that $WIND_BASE was doing what I expected. I could try recompiling with a temporary prefix.
|
Re: Alternate GCC Toolchain
Quote:
GCC wants <header dir>/wrn/coreip in the search path. The way this is solved is by putting the headers in /usr/powerpc-wrs-vxworks/sys-include and then symlinking /usr/powerpc-wrs-vxworks/include to sys-include/wrn/coreip If you don't set WIND_BASE you'll get the "cannot compute suffix of object files" error (most likely) at configure time. |
Re: Alternate GCC Toolchain
Quote:
|
Re: Alternate GCC Toolchain
Quote:
GCC wants to see wrn/coreip. There are many ways you can do this. You don't need to symlink. But it's easier. There are other hacks around it, but that's the simplest way, and it works nicest with fixincludes. |
Re: Alternate GCC Toolchain
limits.h is in target/h, not target/h/wrn/coreip , so symlinking in wrn/coreip will not help at all for this error.
|
Re: Alternate GCC Toolchain
Quote:
Quote:
|
Re: Alternate GCC Toolchain
Hi!
I built this successfully on Arch Linux x64 with the instruction in the OP save for the unzip command having the wrong name (should be "unzip master.zip" ) and building gcc-build with "make -j4 inhibit_libc=true". I haven't tested on a robot yet, but successfully compiled jmesmon's test program. https://github.com/jmesmon/frc-min I will try to make a PKGBUILD for this in the Arch Linux AUR if I can. |
| All times are GMT -5. The time now is 20:08. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi