Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Assistance Portage & Programming
  • Search

Upgrading your system to gcc 3.4(.4)

Problems with emerge or ebuilds? Have a basic programming question about C, PHP, Perl, BASH or something else?
Post Reply
Advanced search
365 posts
  • Page 6 of 15
    • Jump to page:
  • Previous
  • 1
  • …
  • 4
  • 5
  • 6
  • 7
  • 8
  • …
  • 15
  • Next
Author
Message
Akaihiryuu
l33t
l33t
Posts: 808
Joined: Thu May 08, 2003 4:24 am
Location: Columbus, OH

  • Quote

Post by Akaihiryuu » Mon Dec 05, 2005 4:45 am

I just noticed on the one system so far that has had GCC 3.3.6 removed, it still has a /usr/share/gcc-data/i686-pc-linux-gnu/3.3.6 directory. I did equery to see if this directory belongs to any packages and it doesn't. The 3.4.4 directory does belong to sys-libs/gcc-3.4.4 though. Was this directory just left because of config file protection, and is it safe to delete? Are there any other things left hanging around from 3.3.6 that can be removed?
Top
katharsis
n00b
n00b
Posts: 6
Joined: Tue Apr 22, 2003 3:23 am

  • Quote

Post by katharsis » Mon Dec 05, 2005 6:46 am

Just an idea:
I don't know if stuff like grub and memtest86 will do it automatically if necessary, but I think it would be a safe idea to mount /boot before the emerges, especially if u want to run it unattended/over night/whatever.

Another (obvious) hint for newbies without a flat rate isp is to run emerge -f world before the actual emerge -e so the box can be offline during the rebuild.

Maybe this should be added to the guide, I don't know :).
Top
guru245
n00b
n00b
Posts: 6
Joined: Sat Nov 05, 2005 5:23 am
Location: Seoul
Contact:
Contact guru245
Website

where is gccmakedep?

  • Quote

Post by guru245 » Mon Dec 05, 2005 7:43 am

This is what I've done.

# emerge -uv gcc
# gcc-config i686-pc-linux-gnu-3.4.4
# source /etc/profile

# emerge sys-libs/libstdc++-v3 (I forgot add --oneshot option)

# emerge -e system
# emerge -P gcc
# emerge -e world
# emerge -e system

Prior to going on emerge -e world, I can't find gccmakedep. It's gone. What's the matter?
Image
Top
paul555
l33t
l33t
User avatar
Posts: 612
Joined: Mon Nov 22, 2004 11:35 pm
Location: Greece
Contact:
Contact paul555
Website

  • Quote

Post by paul555 » Mon Dec 05, 2005 9:50 am

I followed the guide but during emerge -e world anjuta gave me that error :

Code: Select all

checking command to parse /usr/bin/i686-pc-linux-gnu-nm -B output from i686-pc-linux-gnu-gcc object... ok
checking for objdir... .libs
checking for i686-pc-linux-gnu-ar... i686-pc-linux-gnu-ar
checking for i686-pc-linux-gnu-ranlib... i686-pc-linux-gnu-ranlib
checking for i686-pc-linux-gnu-strip... i686-pc-linux-gnu-strip
checking for correct ltmain.sh version... no

*** [Gentoo] sanity check failed! ***
*** libtool.m4 and ltmain.sh have a version mismatch! ***
*** (libtool.m4 = 1.5.20, ltmain.sh = 1.5.18) ***

Please run:

  libtoolize --copy --force

if appropriate, please contact the maintainer of this
package (or your distribution) for help.


!!! Please attach the config.log to your bug report:
!!! /var/tmp/portage/anjuta-1.2.4/work/anjuta-1.2.4/config.log
Any clue?
"LINUX, MS-DOS, Windows : known as the Good, the Bad and the Ugly." :)
http://www.gnome.gr
Top
Exil
Apprentice
Apprentice
User avatar
Posts: 251
Joined: Mon Oct 10, 2005 3:27 am
Location: Nibylandia

  • Quote

Post by Exil » Mon Dec 05, 2005 10:10 am

Smoe files have differnet versions

Code: Select all

*** (libtool.m4 = 1.5.20, ltmain.sh = 1.5.18) *** 
emerge package with them or emerge --resume --skipfirst and reemerge anjuta after it.
Top
sigmalll
Guru
Guru
User avatar
Posts: 332
Joined: Sun Aug 24, 2003 7:22 pm
Contact:
Contact sigmalll
Website

Re: Advantage?

  • Quote

Post by sigmalll » Mon Dec 05, 2005 10:59 am

Proteus wrote: I don't really know a lot about compilers or GCC. Is there a page where things are described for dummies like me?
I only want to know if it is worth the time to recompile my whole system or if it is not important at all.
My mind circles around the following questions: Will this version be standard in the gentoo future? If not why not? Why did the devs chose
not to make it standard after it stabilized?
It will be the standard compiler from now on (until a new compiler comes out), if you don't upgrade you may have problems getting support on the forums when packages fail to compile in the future.
Top
gschinkel
n00b
n00b
Posts: 14
Joined: Fri Apr 08, 2005 11:58 am
Contact:
Contact gschinkel
Website

  • Quote

Post by gschinkel » Mon Dec 05, 2005 12:03 pm

Just a quick note on nget-0.26 and the new gcc: it doesn't compile because of template issues. A quick way to solve it is to emerge unstable nget-0.27.
Top
paul555
l33t
l33t
User avatar
Posts: 612
Joined: Mon Nov 22, 2004 11:35 pm
Location: Greece
Contact:
Contact paul555
Website

  • Quote

Post by paul555 » Mon Dec 05, 2005 1:05 pm

sorry my mistake i shoulded search the forums first i found that error and bug in bugzilla.Now i emerge --resume --skipfirst and i will deal with it later
"LINUX, MS-DOS, Windows : known as the Good, the Bad and the Ugly." :)
http://www.gnome.gr
Top
incubator
Guru
Guru
Posts: 584
Joined: Thu Jun 05, 2003 3:57 pm
Location: Belgium

  • Quote

Post by incubator » Mon Dec 05, 2005 1:55 pm

Well, for those not wanting to stick with both gcc 3.3.x and 3.4, I found out that , in my case, I already had gcc 3.4 as my only compiler installed (dont know why that happened, been like that for some time)

So, I just did the quick & dirty revdep-rebuild way wich rebuilt a lot of packages, meanwhile I cleaned up sstuff I did not need/want.
(as a KDE lover, I completely removed any gnome libs and derivatoves , also removed php, ruby and tcltk, wxGTK, pygtk support and I find my system responds faster, its a lot lighter too :D)

I recompiled every package that needed relinking etc and lo and behold, gcc 3.3.6 no longer shows up as NS during an emerge -pv world :D

(hint for the finetuners: equery depends <packagename> is a beauty)
Programming today is a race between Software Engineers striving to build bigger and better idiot-proof Programs, and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
Top
znmeb
n00b
n00b
Posts: 25
Joined: Mon Dec 29, 2003 2:36 am
Location: Beaverton, Oregon, USA
Contact:
Contact znmeb
Website

Re: Upgrading your system to gcc 3.4(.4)

  • Quote

Post by znmeb » Mon Dec 05, 2005 2:25 pm

amne wrote:
Mark Loeser on the announcement list wrote: [1] http://www.gentoo.org/proj/en/base/x86/ ... -guide.xml
I just looked through the instructions. Why do you have to do *both* "emerge -e system" and "emerge -e world"?? Doesn't the "emerge -e world" emerge both system and the packages you've added onto system? It looks to me like you're emerging "system" twice!!
--
M. Edward (Ed) Borasky
znmeb@borasky-research.net
http://www.borasky-research.net/
Top
Sho
n00b
n00b
Posts: 48
Joined: Thu Sep 26, 2002 1:18 pm

  • Quote

Post by Sho » Mon Dec 05, 2005 2:39 pm

@znmeb: Because you want emerge -e world to use a gcc34-based toolchain - which is build during emerge -e system.

Read the thread. It's been covered.
Top
JohnHerdy
n00b
n00b
User avatar
Posts: 61
Joined: Thu Jul 11, 2002 9:54 pm

  • Quote

Post by JohnHerdy » Mon Dec 05, 2005 3:43 pm

After revdep-rebuild -X --library libstdc++.so.5 -v affected ebuild were updated including dev-lang/python-2.4.2, however if I run revdep-rebuild -X --library libstdc++.so.5 -v again it wants to update dev-lang/python-2.4.2 again (and again and again and ....).

Could someone else please check if they have the same behaviour? Is it safe to uninstall sys-devel/gcc-3.3* or will this result in a broken python/portage?


Also I'm interested if someone who has done emerge --oneshot sys-libs/libstdc++-v3 and emerge -aC =sys-devel/gcc-3.3* can do a emerge --depclean -vp and see if sys-libs/libstdc++-v3 is in the list.

Thanks!
Top
RiverRat
n00b
n00b
User avatar
Posts: 65
Joined: Thu Oct 07, 2004 8:12 am
Location: Colorado

  • Quote

Post by RiverRat » Mon Dec 05, 2005 4:07 pm

NoControl wrote:Sorry for asking this while it was hinted at before, but I think it hasn't really been explained yet.

No matter which method I use to upgrade my GCC, I can't understand why I shouldn't be able to set GCC 3.4.4-specific CFLAGS as soon as I've executed this piece of code:

Code: Select all

# emerge -uav gcc
# gcc-config i686-pc-linux-gnu-3.4.4
# source /etc/profile
After this is done, GCC 3.4.4 is present and the default compiler, used in every following emerge (right?).
I understand that some programs might still rely on the old version, but that shouldn't stop me from already using the new flags when compiling stuff, right?

In fact, after studying the GCC 3.4.4 documentation, it appears that -O2 already includes some of the new C flags (like -funit-at-a-time). So this means that, even if you don't specifically add GCC 3.4.4 C flags yourself, everyone using -O2 is already implicitly using some. Doesn't this mean it's fine to set them as soon as gcc-config has set GCC 3.4.4 as default compiler?
This was not just hinted at but I answered it in full here: https://forums.gentoo.org/viewtopic-p-2 ... ml#2925003
RiverRat
Top
JohnHerdy
n00b
n00b
User avatar
Posts: 61
Joined: Thu Jul 11, 2002 9:54 pm

  • Quote

Post by JohnHerdy » Mon Dec 05, 2005 4:10 pm

Another question;

I use the -X parameter with revdep-rebuild (recompile based on package names, not exact versions), however the newer version have non-installed dependencies but revdep-ebuild add --nodeps to the emerge command. Is there any undocumented parameter (in the newer version) that removes the --nodeps?

Thanks!
Top
frilled
Retired Dev
Retired Dev
User avatar
Posts: 386
Joined: Mon Mar 15, 2004 9:07 am
Location: Atlantis, inner city ring

Great joke

  • Quote

Post by frilled » Mon Dec 05, 2005 4:52 pm

I followed the migration guide. I guess I shouldn't have :D

Basically I fear, recompiling two boxes (~570 and ~820 packages) was mostly in vain. Why? Because during the world recompile, gcc-3.3.6 is re-merged - and the 3.3.6 ebuild *does* set the active gcc back to 3.3.6. So basically 700 of those 800+ packages were simply compiled with 3.3.6 again instead of 3.4.4, making this a massive waste of resources :/

Prove me wrong, but I am just watching a box that has ~300 packages to go use using 3.3.6 to compile OpenOffice.org 2.0. Which takes about 6 hours. In vain.

:evil:
"Failure is not an option!"
"Sir, we are out of further options."
Top
thomasvk
Guru
Guru
Posts: 597
Joined: Sat Mar 19, 2005 6:53 pm

  • Quote

Post by thomasvk » Mon Dec 05, 2005 5:38 pm

I think it shouldn't happen with the updated guide. I closely watched the whole updating process and GCC didn't switch at all (following the updated guide).
Top
Sho
n00b
n00b
Posts: 48
Joined: Thu Sep 26, 2002 1:18 pm

  • Quote

Post by Sho » Mon Dec 05, 2005 5:44 pm

Ditto. Went well on two boxes with the updated guide.
Top
frilled
Retired Dev
Retired Dev
User avatar
Posts: 386
Joined: Mon Mar 15, 2004 9:07 am
Location: Atlantis, inner city ring

  • Quote

Post by frilled » Mon Dec 05, 2005 6:06 pm

Yeah, I'll try AGAIN with merging the library first :evil:

Looking forward to all the servers :arrow:
"Failure is not an option!"
"Sir, we are out of further options."
Top
thomasvk
Guru
Guru
Posts: 597
Joined: Sat Mar 19, 2005 6:53 pm

  • Quote

Post by thomasvk » Mon Dec 05, 2005 6:45 pm

Why would you recompile everything on servers? Unless it fixes some important security issues, wouldn't it be useless to upgrade on servers?
Top
frilled
Retired Dev
Retired Dev
User avatar
Posts: 386
Joined: Mon Mar 15, 2004 9:07 am
Location: Atlantis, inner city ring

  • Quote

Post by frilled » Mon Dec 05, 2005 7:02 pm

Because revdep-rebuild failed on me so many times I don't really consider it an option. And clinging to an old gcc is also not really an option.
"Failure is not an option!"
"Sir, we are out of further options."
Top
henrikgentoo
n00b
n00b
Posts: 28
Joined: Mon Dec 20, 2004 7:47 am

gcc-3.4.4 upgrade: when should genkernel be run ?

  • Quote

Post by henrikgentoo » Mon Dec 05, 2005 7:40 pm

after careful reading, all the messages in this forum, I still don't know when I should run genkernel to take advantage of the new gcc 3.4.4 compiler ?

Henrik
Top
Pasketti
Tux's lil' helper
Tux's lil' helper
User avatar
Posts: 109
Joined: Thu Sep 04, 2003 12:47 am
Location: Austin, Texas

Here's what I did

  • Quote

Post by Pasketti » Mon Dec 05, 2005 8:11 pm

I tried following the upgrade guide, but the version I had printed out was the original one that had the libstdc++ install in the wrong place. So of course, when I emerge -e system, it re-installs gcc-3.3.6 and resets that as the default compiler. Fortunately, I caught it pretty quickly.

What I wound up doing was this:

# upgrade compiler
emerge -u gcc
# get list of packages to recompile
emerge -peu world > worldmerge

#edit worldmerge file into a shell script
#that individually emerges each package
#via emerge =packagename-version,
#then run it
./worldmerge

#edit worldmerge script to recompile everything
#that was installed before glibc, and run it again
./worldmerge

#revdep-rebuild for old library
revdep-rebuild --soname libstdc++.so.5

#unmerge old compiler
emerge unmerge gcc-3.3.6

#revdep-rebuild for anything else
revdep-rebuild

#recompile the kernel
make clean && make bzimage && make modules modules-install

#install new kernel and reboot

It all seems to work ok. revdep-rebuild gives me a clean bill of health. I don't have any binary packages, so I didn't install libstdc++-v3.
Top
frilled
Retired Dev
Retired Dev
User avatar
Posts: 386
Joined: Mon Mar 15, 2004 9:07 am
Location: Atlantis, inner city ring

  • Quote

Post by frilled » Mon Dec 05, 2005 8:12 pm

Well, you "take advantage" after setting 3.4.4 as default.

After that (and probably compiling a lot of stuff *gg*) you will most likely want to compile the kernel with the new gcc, too. That's when genkernel comes in. No more, no less.
"Failure is not an option!"
"Sir, we are out of further options."
Top
RiverRat
n00b
n00b
User avatar
Posts: 65
Joined: Thu Oct 07, 2004 8:12 am
Location: Colorado

Re: Great joke

  • Quote

Post by RiverRat » Mon Dec 05, 2005 8:17 pm

wgi wrote:I followed the migration guide. I guess I shouldn't have :D

Basically I fear, recompiling two boxes (~570 and ~820 packages) was mostly in vain. Why? Because during the world recompile, gcc-3.3.6 is re-merged - and the 3.3.6 ebuild *does* set the active gcc back to 3.3.6. So basically 700 of those 800+ packages were simply compiled with 3.3.6 again instead of 3.4.4, making this a massive waste of resources :/

Prove me wrong, but I am just watching a box that has ~300 packages to go use using 3.3.6 to compile OpenOffice.org 2.0. Which takes about 6 hours. In vain.

:evil:
Okay, according to gcc-config the following happens:

Code: Select all

gcc-config --use-portage-chost  Only set to given profile if its CHOST is the 
                                same as that set for portage in /etc/make.conf
                                (or one of other portage config files...).
I looked through the ebuilds and it seems that some of the older ones actually do call gcc-config in some situations to change the default compiler. These all appear to be dated and upgrading to the latest gcc ebuilds for the given tree (3.3.x or 3.4.x) should resolve the issues. For example, in the gcc-3.4.1-r3.ebuild it says:

Code: Select all

        if [ "${ROOT}" = "/" -a "${CHOST}" = "${CCHOST}" ]
        then
                gcc-config --use-portage-chost ${CCHOST}-${GCC_RELEASE_VER}
        fi
The ones that I found that perform this are: gcc-2.95.3-r9.ebuild, gcc-3.2.3-r4.ebuild, gcc-3.3.2-r7.ebuild, and gcc-3.4.1-r3.ebuild.
According to the most recent ebuilds (/usr/portage/sys-devel/gcc/gcc-{3.3.6,3.4.4-r1}.ebuild) this does not happen.
RiverRat
Top
figueroa
Advocate
Advocate
User avatar
Posts: 3032
Joined: Sun Aug 14, 2005 8:15 pm
Location: Edge of marsh USA
Contact:
Contact figueroa
Website

emerge --resume with revdep-rebuild

  • Quote

Post by figueroa » Mon Dec 05, 2005 8:32 pm

I took the "faster method" approach using revdep-rebuild and had an emerge failure with one of the packages 80% through. After fixing the problem, if I rerun revdep-rebuild according to the instruction provided along with the failed emerge, it starts all over again. Can I use emerge --resume instead?

If NOT, can I switch in midstream and use the "safer method" now?

Any other suggestions? I'm on my third run through the entire process using revdep-rebuild so I was a little frustrated watching it start all over again for the third try.
Top
Post Reply

365 posts
  • Page 6 of 15
    • Jump to page:
  • Previous
  • 1
  • …
  • 4
  • 5
  • 6
  • 7
  • 8
  • …
  • 15
  • Next

Return to “Portage & Programming”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic