View previous topic :: View next topic |
Author |
Message |
destroyedlolo l33t
Joined: 17 Jun 2011 Posts: 846 Location: Close to Annecy (France)
|
Posted: Sun Oct 26, 2014 5:59 pm Post subject: Crossdev ... how to upgrade ? |
|
|
Hello,
I've installed Gentoo on my BananaPI (A20 ARM cpu) and to speed up merging, I've installed cross compiler and Distcc on some of my machines.
Code: | crossdev --ov-output /usr/local/portage -S -v -t armv7a-hardfloat-linux-gnueabi |
Today, while upgrading my bPI, I saw gcc is updated.
Despite some googling, I didn't fine the way to update my cross compilers as well. Do I have to relaunch again crossdev or any other command to launch ?
Thanks
Laurent |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8722 Location: ~Brussels - Belgique
|
Posted: Sun Oct 26, 2014 6:46 pm Post subject: |
|
|
Normally, cross toolchains are in your world file, so they will be updated.
To update the cross-compiled packages, just call XXX-emerge where XXX is the cross target (for example armv7l-hardfloat-linux-gnueabi-emerge -DuNav @world) _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
destroyedlolo l33t
Joined: 17 Jun 2011 Posts: 846 Location: Close to Annecy (France)
|
Posted: Sun Oct 26, 2014 7:49 pm Post subject: |
|
|
merci Xavier,
But if I do that, it will be the ARM version of GCC (arm binary that creates arm binaries) that will be upgraded, not the Xcompiler (x86 binary that creates arm binaries), isn't it ? |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8722 Location: ~Brussels - Belgique
|
Posted: Sun Oct 26, 2014 8:12 pm Post subject: |
|
|
As I said, there are 2 modes for upgrade
- update the cross toolchain using the host system will be done by the host portage (cros-*/{binutils,gcc,gibc})
- update the target packages is done using by re-cross-compiling them, using cross-emerge (target-emerge) _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
destroyedlolo l33t
Joined: 17 Jun 2011 Posts: 846 Location: Close to Annecy (France)
|
Posted: Sun Oct 26, 2014 8:56 pm Post subject: |
|
|
Oups, yes, sorry.
Anyway, I did on my x86 host a :
Code: | PiV laurent # emerge -uDN --changed-use --keep-going --ask @world |
but only the native compiler get updated
Code: | PiV laurent # gcc-config -l
[1] armv7a-hardfloat-linux-gnueabi-4.7.3 *
[2] x86_64-pc-linux-gnu-4.7.3 *
[3] x86_64-pc-linux-gnu-4.8.3
|
even if X tool chain in in my world file.
Code: | PiV laurent # grep cross /var/lib/portage/world
cross-armv7a-hardfloat-linux-gnueabi/binutils
cross-armv7a-hardfloat-linux-gnueabi/gcc
cross-armv7a-hardfloat-linux-gnueabi/glibc
cross-armv7a-hardfloat-linux-gnueabi/linux-headers
sys-devel/crossdev
|
I tried also to force the merging but
Code: | PiV laurent # emerge -vp cross-armv7a-hardfloat-linux-gnueabi/gcc
These are the packages that would be merged, in order:
Calculating dependencies... done!
emerge: there are no ebuilds to satisfy "cross-armv7a-hardfloat-linux-gnueabi/gcc".
|
|
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8722 Location: ~Brussels - Belgique
|
Posted: Mon Oct 27, 2014 8:08 am Post subject: |
|
|
What is the chosen arch for arm ? ~arm or arm ? Check the arm make.conf. _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
destroyedlolo l33t
Joined: 17 Jun 2011 Posts: 846 Location: Close to Annecy (France)
|
Posted: Mon Oct 27, 2014 1:23 pm Post subject: |
|
|
Hi,
I have in /usr/armv7a-hardfloat-linux-gnueabi/etc/portage/make.conf
Now, on the banana itself, where GCC has been updated, I have :
Code: | laurent@bPI ~ $ emerge -vp gcc
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] sys-devel/gcc-4.8.3:4.8 USE="cxx fortran nls nptl openmp (-altivec) -awt -doc (-fixed-point) -gcj -go -graphite (-hardened) (-libssp) -mudflap (-multilib) (-multislot) -nopie -nossp -objc -objc++ -objc-gc -regression-test (-sanitize) -vanilla" 0 kB
Total: 1 package (1 reinstall), Size of downloads: 0 kB
|
|
|
Back to top |
|
|
logistiker n00b
Joined: 16 Jun 2008 Posts: 41
|
Posted: Mon Oct 27, 2014 7:30 pm Post subject: |
|
|
[quote="destroyedlolo"]Oups, yes, sorry.
Anyway, I did on my x86 host a :
Code: | PiV laurent # emerge -uDN --changed-use --keep-going --ask @world |
but only the native compiler get updated
Code: | PiV laurent # gcc-config -l
[1] armv7a-hardfloat-linux-gnueabi-4.7.3 *
[2] x86_64-pc-linux-gnu-4.7.3 *
[3] x86_64-pc-linux-gnu-4.8.3
|
Did you try this?
armv7a-hardfloat-linux-gnueabi-emerge -uDN --changed-use --keep-going --ask @world |
|
Back to top |
|
|
destroyedlolo l33t
Joined: 17 Jun 2011 Posts: 846 Location: Close to Annecy (France)
|
Posted: Mon Oct 27, 2014 8:21 pm Post subject: |
|
|
Hi logistiker,
Yes :
Code: | root@PiV ~ $ armv7a-hardfloat-linux-gnueabi-emerge -uDNp --changed-use --keep-going --ask @world
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild N ] sys-apps/busybox-1.22.1-r1 to /usr/armv7a-hardfloat-linux-gnueabi/ USE="make-symlinks static -debug -ipv6 -livecd -math -mdev -pam -savedconfig (-selinux) -sep-usr -syslog -systemd" |
On another node where I've started to build a binhost for my ARMs, it tried to rebuild the native ARM gcc, but the cross compiler remain intact. |
|
Back to top |
|
|
logistiker n00b
Joined: 16 Jun 2008 Posts: 41
|
Posted: Mon Oct 27, 2014 8:53 pm Post subject: |
|
|
destroyedlolo wrote: | Hi logistiker,
Yes :
Code: | root@PiV ~ $ armv7a-hardfloat-linux-gnueabi-emerge -uDNp --changed-use --keep-going --ask @world
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild N ] sys-apps/busybox-1.22.1-r1 to /usr/armv7a-hardfloat-linux-gnueabi/ USE="make-symlinks static -debug -ipv6 -livecd -math -mdev -pam -savedconfig (-selinux) -sep-usr -syslog -systemd" |
On another node where I've started to build a binhost for my ARMs, it tried to rebuild the native ARM gcc, but the cross compiler remain intact. |
The only other thing I can think of is to clean the cross dev environment (crossdev --clean armv7a-hardfloat-linux-gnueabi) , switch your main gcc to the newer one and then run crossdev -S armv7a-hardfloat-linux-gnueabi again. This worked for me but I didn't have anything emerged in my crossdev env, so I didn't mind wiping out the old one. |
|
Back to top |
|
|
destroyedlolo l33t
Joined: 17 Jun 2011 Posts: 846 Location: Close to Annecy (France)
|
Posted: Mon Oct 27, 2014 9:04 pm Post subject: |
|
|
It's what I'm thinking also if I don't find a smarter way.
But I guess / hope that peoples that imagine cross-compilation on Gentoo thought something better |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8722 Location: ~Brussels - Belgique
|
Posted: Mon Oct 27, 2014 9:14 pm Post subject: |
|
|
How did you build your cross environment? With which parameters?
Maybe you asked for "stable"...
I do this: Code: | crossdev -t target_arch | without any other parameter, and the target is ~arch as the guest. _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
destroyedlolo l33t
Joined: 17 Jun 2011 Posts: 846 Location: Close to Annecy (France)
|
Posted: Mon Oct 27, 2014 10:03 pm Post subject: |
|
|
I did :
Code: | crossdev --ov-output /usr/local/portage -S -v -t armv7a-hardfloat-linux-gnueabi |
But I guess Gcc is in stable as well on by bPI isn't it ?
Code: | [ebuild R ] sys-devel/gcc-4.8.3:4.8 |
|
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8722 Location: ~Brussels - Belgique
|
Posted: Tue Oct 28, 2014 7:07 am Post subject: |
|
|
Remove the "-S" argument if you don't want a stable version. _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
destroyedlolo l33t
Joined: 17 Jun 2011 Posts: 846 Location: Close to Annecy (France)
|
Posted: Fri Oct 31, 2014 8:09 pm Post subject: |
|
|
Hi Xavier,
If I'm not mistaking, my ARM system said the stable version of GCC is 4.8.3
Code: | [ebuild R ] sys-devel/gcc-4.8.3:4.8 |
Which is corroborated by http://packages.gentoo.org/package/sys-devel/gcc.
So, it seems upgrading X-gcc is simply ignored when upgrading world. |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8722 Location: ~Brussels - Belgique
|
Posted: Fri Oct 31, 2014 8:29 pm Post subject: |
|
|
Did you rebuild the cross chain without the -S argument ? just crossev -t target ? _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
destroyedlolo l33t
Joined: 17 Jun 2011 Posts: 846 Location: Close to Annecy (France)
|
Posted: Fri Oct 31, 2014 8:58 pm Post subject: |
|
|
With the '-S'. |
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8722 Location: ~Brussels - Belgique
|
Posted: Sat Nov 01, 2014 7:09 pm Post subject: |
|
|
-S means "stable", thus gcc 4.7 _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
destroyedlolo l33t
Joined: 17 Jun 2011 Posts: 846 Location: Close to Annecy (France)
|
|
Back to top |
|
|
|