2009-09-27 15:08:20 svn: uclinux-dist/branches/2009R1 cross-compilation error
Amusing Muses (CANADA)
Message: 80527
In the main directory I checked the tree out to, I do:
make
and it fails almost immediately...
make[1]: Entering directory `/home/muse/uclinux-dist/linux-2.6.x'
CHK include/linux/version.h
CHK include/linux/utsrelease.h
SYMLINK include/asm -> include/asm-blackfin
HOSTCC scripts/basic/fixdep
HOSTCC scripts/basic/docproc
HOSTCC scripts/basic/hash
HOSTCC scripts/kallsyms
HOSTCC scripts/bin2c
CC scripts/mod/empty.o
HOSTCC scripts/mod/mk_elfconfig
as: unrecognized option '-mcpu=bf533-0.3'
It should be calling bfin-uclinux-as, not as, am I missing something? There's nothing in the README to suggest I'm missing any steps...
QuoteReplyEditDelete
2009-09-27 21:15:21 Re: svn: uclinux-dist/branches/2009R1 cross-compilation error
Mike Frysinger (UNITED STATES)
Message: 80533
did you actually configure the dist ? you need to configure a board target before you can expect `make` to work.
QuoteReplyEditDelete
2009-09-27 22:36:43 Re: svn: uclinux-dist/branches/2009R1 cross-compilation error
Amusing Muses (CANADA)
Message: 80534
You mean "make menuconfig" right?
Yeah I did that and chose the appropriate vendor & product, and ensured the right processor model and board were selected in the kernel config, and didn't make any changes to the library selection config.
Then "make" fails, as above.
QuoteReplyEditDelete
2009-09-27 23:31:05 Re: svn: uclinux-dist/branches/2009R1 cross-compilation error
Frank Van Hooft (CANADA)
Message: 80536
Did you install the blackfin toolchain, as described here:
docs.blackfin.uclinux.org/doku.php?id=toolchain:installing
?
QuoteReplyEditDelete
2009-09-28 14:16:01 Re: svn: uclinux-dist/branches/2009R1 cross-compilation error
Amusing Muses (CANADA)
Message: 80577
No, I created my own cross compilation environment--which works just fine for compiling any other blackfin project, e.g. I can compile Linux 2.6.31 with my toolchain.
Is there something "special" (i.e. broken) about the toolchain described in the wiki such that I would actually have to use it to compile this project correctly instead of any other cross compiler?
Nobody else has this problem building from svn sources? hm.
QuoteReplyEditDelete
2009-09-28 14:33:22 Re: svn: uclinux-dist/branches/2009R1 cross-compilation error
Robin Getz (UNITED STATES)
Message: 80578
Amusing:
No one else has this problem - so - I guess your custom toolchain/build environment is broken
If you use one of the release tarballs - do you get the same problem?
QuoteReplyEditDelete
2009-09-29 01:23:23 Re: svn: uclinux-dist/branches/2009R1 cross-compilation error
Amusing Muses (CANADA)
Message: 80595
That would seem logical. So I installed the toolchain as per the instructions for Debian-based distros at:
docs.blackfin.uclinux.org/doku.php?id=toolchain:installing
And instead of the branch named in the topic from, I am trying with the release sources (uClinux-dist-2009R1-RC6.tar.bz2).
Now, when I try to "make menuconfig", choose my vendor & board, then do "make", it still fails. This time it looks like it's because there is no gcc-config on the host system:
chmod +x tools/romfs-inst.sh tools/modules-alias.sh
. linux-2.6.x/.config; if [ "$CONFIG_INITRAMFS_SOURCE" != "" ]; then \
mkdir -p `dirname $CONFIG_INITRAMFS_SOURCE`; \
touch $CONFIG_INITRAMFS_SOURCE || exit 1; \
fi
rm -f linux-2.6.x/usr/initramfs_data.cpio.gz
make ARCH=blackfin CROSS_COMPILE=bfin-uclinux- -j8 -C linux-2.6.x || exit 1
sh: /usr/bin/gcc-config: not found
gcc-config: error: could not get compiler binary path: Function not implemented
make[1]: Entering directory `/home/muse/uClinux-dist/linux-2.6.x'
CHK include/linux/version.h
SYMLINK include/asm -> include/asm-blackfin
CHK include/linux/utsrelease.h
CC kernel/bounds.s
sh: /usr/bin/gcc-config: not found
gcc-config: error: could not get compiler binary path: Function not implemented
make[2]: *** [kernel/bounds.s] Error 1
make[1]: *** [prepare0] Error 2
make[1]: *** Waiting for unfinished jobs....
CC scripts/mod/empty.o
sh: /usr/bin/gcc-config: not found
gcc-config: error: could not get compiler binary path: Function not implemented
make[3]: *** [scripts/mod/empty.o] Error 1
make[2]: *** [scripts/mod] Error 2
make[1]: *** [scripts] Error 2
make[1]: Leaving directory `/home/muse/uClinux-dist/linux-2.6.x'
make: *** [linux] Error 1
I suspect that gcc-config is a Gentooism, the host I'm trying to to that particular compile on is Ubuntu--and I can't find any package that provides gcc-config for ubuntu. Any tips?
QuoteReplyEditDelete
2009-09-29 11:29:48 Re: svn: uclinux-dist/branches/2009R1 cross-compilation error
Robin Getz (UNITED STATES)
Message: 80639
Amusing:
There is no gcc-config on my system, and it works fine.
Where did you get your uClinux-dist and kernel sources from?
QuoteReplyEditDelete
2009-09-29 12:54:20 Re: svn: uclinux-dist/branches/2009R1 cross-compilation error
Amusing Muses (CANADA)
Message: 80640
I got it from https://blackfin.uclinux.org/gf/download/frsrelease/451/6808/uClinux-dist-2009R1-RC6.tar.bz2
QuoteReplyEditDelete
2009-09-29 13:50:15 Re: svn: uclinux-dist/branches/2009R1 cross-compilation error
Amusing Muses (CANADA)
Message: 80641
Nevermind, my PATH was misconfigured.
QuoteReplyEditDelete
2009-09-29 14:02:35 Re: svn: uclinux-dist/branches/2009R1 cross-compilation error
Robin Getz (UNITED STATES)
Message: 80643
Amusing:
Thanks for letting me know...
but you should have got an error that looks like: "bfin-uclinux-gcc: Command not found"
rgetz@imhotep:~/blackfin/trunk/uClinux-dist> make
chmod +x tools/romfs-inst.sh tools/modules-alias.sh tools/build-udev-perms.sh
. linux-2.6.x/.config; if [ "$CONFIG_INITRAMFS_SOURCE" != "" ]; then \
mkdir -p `dirname $CONFIG_INITRAMFS_SOURCE`; \
touch $CONFIG_INITRAMFS_SOURCE || exit 1; \
fi
rm -f linux-2.6.x/usr/initramfs_data.cpio
make ARCH=blackfin CROSS_COMPILE=bfin-uclinux- -j4 -C linux-2.6.x || exit 1
make[1]: bfin-uclinux-gcc: Command not found
make[1]: Entering directory `/home/rgetz/blackfin/trunk/uClinux-dist/linux-2.6.x'
CHK include/linux/version.h
CHK include/linux/utsrelease.h
SYMLINK include/asm -> include/asm-blackfin
CC scripts/mod/empty.o
/bin/sh: bfin-uclinux-gcc: command not found
make[3]: *** [scripts/mod/empty.o] Error 127
make[3]: *** Waiting for unfinished jobs....
make[2]: *** [scripts/mod] Error 2
make[1]: *** [scripts] Error 2
make[1]: Leaving directory `/home/rgetz/blackfin/trunk/uClinux-dist/linux-2.6.x'
make: *** [linux] Error 1
What was mangled in your path? (for my future reference?)
QuoteReplyEditDelete
2009-09-29 14:15:50 Re: svn: uclinux-dist/branches/2009R1 cross-compilation error
Amusing Muses (CANADA)
Message: 80644
Well I had copied my original (broken) toolchain from my gentoo box to my ubuntu box in ~/bin/ and I updated my PATH to include it.
Then I installed the toolchain as per the wiki, then logged out and back in to clear out the PATH, then I added the new toolchain to the end of the path...
Little did I know that the old toolchain was still overriding the new because when I re-logged in... Ubuntu has this feature I wasn't expecting:
/etc/skel/.profile:# set PATH so it includes user's private bin if it exists
/etc/skel/.profile: PATH="$HOME/bin:$PATH"
Thanks though. It seems like there might be more compilation problems yet, but I have some work to do on another part of the system before I try to confirm them.
QuoteReplyEditDelete
2009-09-29 17:15:32 Re: svn: uclinux-dist/branches/2009R1 cross-compilation error
Mike Frysinger (UNITED STATES)
Message: 80658
yes, if you copied things from a Gentoo system to a non-Gentoo system, you could easily have references to the Gentoo gcc-config wrapper