Bug 86641 - crossdev refuses to build the avr toolchain, breaks when trying to emerge cross-avr/binutils
|
Bug#:
86641
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: x86
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: normal
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: vapier@gentoo.org
|
Reported By: mark@burazin.net
|
|
Component: Development
|
|
|
URL:
|
|
Summary: crossdev refuses to build the avr toolchain, breaks when trying to emerge cross-avr/binutils
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2005-03-25 04:43 0000
|
I emerged crossdev-0.9.5 and binutils-2.15.92.0.2-r7 (unmasked it with ~x86)
I have tried emerging binutils with and without +multitarget flag, the final error is the same.
The error happens when I run:
crossdev --target avr-unknown-linux-gnu
Reproducible: Always
Steps to Reproduce:
1.emerge binutils (with ~x86)
2.emerge crossdev
3.crossdev --target avr-unknown-linux-gnu
Actual Results:
* Emerging cross-binutils...
* binutils failed :(
* If you file a bug, please attach the following logfiles:
* /var/log/portage/cross-avr-info.log
* /var/log/portage/cross-avr-binutils.log
Expected Results:
I should have avr-gcc and other avr-* tools on my system.
Portage 2.0.51.19 (default-linux/x86/2004.3, gcc-3.3.5, glibc-2.3.4.20040808-r1,
2.6.10-gentoo-r6 i686)
=================================================================
System uname: 2.6.10-gentoo-r6 i686 Intel(R) Pentium(R) 4 CPU 2.40GHz
Gentoo Base System version 1.4.16
Python: dev-lang/python-2.3.4-r1 [2.3.4 (#1, Mar 2 2005, 13:28:12)]
dev-lang/python: 2.3.4-r1
sys-devel/autoconf: 2.13, 2.59-r6
sys-devel/automake: 1.5, 1.8.5-r3, 1.6.3, 1.7.9-r1, 1.4_p6, 1.9.4
sys-devel/binutils: 2.15.92.0.2-r7
sys-devel/libtool: 1.5.10-r4
virtual/os-headers: 2.4.21-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O2 -march=pentium4 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env
/usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=pentium4 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms"
GENTOO_MIRRORS="ftp://mirror.etf.bg.ac.yu/gentoo/"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X acpi alsa apache2 apm arts audiofile avi berkdb bitmap-fonts bzlib
cdb cdparanoia cdr crypt ctypecups curl dvd dvdr emboss encode esd fam flac
font-server foomaticdb fortran ftp gdbm gif gnome gpm gtk gtk2imagemagick imlib
innodb java jpeg kde kdeenablefinal libg++ libwww mad matrox mikmod mmx motif
mp3 mpeg multitarget mysql ncurses nls offensive oggvorbis openal opengl oss pam
pcre pdflib perl php plotutils png posixpython qt quicktime readline sdl shared
slang sndfile sockets spell sqlite sse ssl svga tcltk tcpd theora tiff truetype
truetype-fonts type1-fonts unicode usb videos wmf wxwindows xface xine xinerama
xml xml2 xmms xpmxv xvid zlib"
Unset: ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS, PORTDIR_OVERLAY
your PORTDIR_OVERLAY is not set, that's why
i added a check to crossdev for that
That solved the issue, thank You!
Hi,
this also happens if you have more than one location set in PORTDIR_OVERLAY.
This is my output:
[...]
* PORTDIR_OVERLAY: /usr/local/portage /usr/local/overlays/gentoo-de
[...]
You can trigger the bug with:
mkdir /usr/local/portage2
PORTDIR_OVERLAY="/usr/local/portage /usr/local/portage2" crossdev -t avr-unknown-linux-gnu
It will try to use the whole string as directory
I patched crossdev, so it takes the PORTDIR_OVERLAY environment as an array and only uses the first part.
I'll upload it in a minute.
Could someone please reopen this bug?
how about this:
PORTDIR_OVERLAY=$(portageq envvar PORTDIR_OVERLAY)
PORTDIR_OVERLAY=${PORTDIR_OVERLAY%% *}
Looks good and it is shorter.
I'm not so into bash, I just remembered bash had arrays and after reading the manualpage I came up with that patch.