Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[SOLVED] Przejście z gcc 3 na gcc 4 - popsułem . . .
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Polskie forum (Polish)
View previous topic :: View next topic  
Author Message
GHunterPL
n00b
n00b


Joined: 01 Nov 2008
Posts: 60

PostPosted: Fri Jan 30, 2009 6:38 pm    Post subject: [SOLVED] Przejście z gcc 3 na gcc 4 - popsułem . . . Reply with quote

Witam.
Po raz kolejny coś popsułem :lol: Taka rola życiowego pawiana, co codziennie musi się jakimś żarciem uciapać, a czego się nie tknie to zepsuje :lol:
Ale przechodząc do konkretów...
Naszło mnie na usunięcie starego gcc-3.3.6-r1. Nie potrzebuję go, więc postanowiłem usunąć.
Niestety zamiast skierować się do gentoo.org i poczytać o upgrade gcc, po prostu zrobiłem emerge -C sys-devel/gcc-3.3.6-r1
Efekt? Bardzo ciekawy.
Po zamaskowaniu powyższej wersji gcc poprzez package.mask oraz zrobieniu emerge -uDNp world pojawiła się informacja o konieczności instalacji libstdc++-V3-3.3.6.
Ok, kompatybilność najważniejsza. Niestety emerge się nie udał...

Code:
   -c /var/tmp/portage/sys-libs/libstdc++-v3-3.3.6/work/gcc-3.3.6/gcc/collect2.c -o collect2.o
/var/tmp/portage/sys-libs/libstdc++-v3-3.3.6/work/gcc-3.3.6/gcc/collect2.c: In function 'notice':
/var/tmp/portage/sys-libs/libstdc++-v3-3.3.6/work/gcc-3.3.6/gcc/collect2.c:363: warning: traditional C rejects ISO C style function definitions
/var/tmp/portage/sys-libs/libstdc++-v3-3.3.6/work/gcc-3.3.6/gcc/collect2.c: In function 'fatal_perror':
/var/tmp/portage/sys-libs/libstdc++-v3-3.3.6/work/gcc-3.3.6/gcc/collect2.c:375: warning: traditional C rejects ISO C style function definitions
/var/tmp/portage/sys-libs/libstdc++-v3-3.3.6/work/gcc-3.3.6/gcc/collect2.c: In function 'fatal':
/var/tmp/portage/sys-libs/libstdc++-v3-3.3.6/work/gcc-3.3.6/gcc/collect2.c:393: warning: traditional C rejects ISO C style function definitions
/var/tmp/portage/sys-libs/libstdc++-v3-3.3.6/work/gcc-3.3.6/gcc/collect2.c: In function 'error':
/var/tmp/portage/sys-libs/libstdc++-v3-3.3.6/work/gcc-3.3.6/gcc/collect2.c:409: warning: traditional C rejects ISO C style function definitions
/var/tmp/portage/sys-libs/libstdc++-v3-3.3.6/work/gcc-3.3.6/gcc/collect2.c: In function 'dump_file':
/var/tmp/portage/sys-libs/libstdc++-v3-3.3.6/work/gcc-3.3.6/gcc/collect2.c:515: warning: comparison of unsigned expression < 0 is always false
In function 'open',
    inlined from 'collect_execute' at /var/tmp/portage/sys-libs/libstdc++-v3-3.3.6/work/gcc-3.3.6/gcc/collect2.c:1575:
/usr/include/bits/fcntl2.h:51: error: call to '__open_missing_mode' declared with attribute error: open with O_CREAT in second argument needs 3 arguments
make[1]: *** [collect2.o] Błąd 1
make[1]: Opuszczenie katalogu `/var/tmp/portage/sys-libs/libstdc++-v3-3.3.6/work/build/gcc'
make: *** [all-gcc] Błąd 2
 *
 * ERROR: sys-libs/libstdc++-v3-3.3.6 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 3061:  Called die
 * The specific snippet of code:
 *       S="${WORKDIR}/build" emake all-target-libstdc++-v3 LIBPATH="${LIBPATH}" BOOT_CFLAGS="${CFLAGS}" STAGE1_CFLAGS="-O" || die
 *  The die message:
 *   (no error message)
 *


Ok, tu zacząłem korzystać z google ;) i znalazłem podręcznik dotyczący aktualizacji gcc dla Gentoo, dokładnie to ten. Zrobiłem czynności wymagane w punkcie 2.1, niestety nie pomogło- oczywiście musiało się okazać, że libstdc++ trzeba zemergować PRZED usunięciem gcc 3.* ...
Kombinując z google, niektórymi tematami z bugzilli, i logiką [której niestety było za mało] podstanowiłem zemergować gcc-3.3.6-r1.
Niestety również nie poszło

Code:
   -c /var/tmp/portage/sys-devel/gcc-3.3.6-r1/work/gcc-3.3.6/gcc/collect2.c -o collect2.o
/var/tmp/portage/sys-devel/gcc-3.3.6-r1/work/gcc-3.3.6/gcc/collect2.c: In function 'notice':
/var/tmp/portage/sys-devel/gcc-3.3.6-r1/work/gcc-3.3.6/gcc/collect2.c:369: warning: traditional C rejects ISO C style function definitions
/var/tmp/portage/sys-devel/gcc-3.3.6-r1/work/gcc-3.3.6/gcc/collect2.c: In function 'fatal_perror':
/var/tmp/portage/sys-devel/gcc-3.3.6-r1/work/gcc-3.3.6/gcc/collect2.c:381: warning: traditional C rejects ISO C style function definitions
/var/tmp/portage/sys-devel/gcc-3.3.6-r1/work/gcc-3.3.6/gcc/collect2.c: In function 'fatal':
/var/tmp/portage/sys-devel/gcc-3.3.6-r1/work/gcc-3.3.6/gcc/collect2.c:399: warning: traditional C rejects ISO C style function definitions
/var/tmp/portage/sys-devel/gcc-3.3.6-r1/work/gcc-3.3.6/gcc/collect2.c: In function 'error':
/var/tmp/portage/sys-devel/gcc-3.3.6-r1/work/gcc-3.3.6/gcc/collect2.c:415: warning: traditional C rejects ISO C style function definitions
/var/tmp/portage/sys-devel/gcc-3.3.6-r1/work/gcc-3.3.6/gcc/collect2.c: In function 'dump_file':
/var/tmp/portage/sys-devel/gcc-3.3.6-r1/work/gcc-3.3.6/gcc/collect2.c:521: warning: comparison of unsigned expression < 0 is always false
In function 'open',
    inlined from 'collect_execute' at /var/tmp/portage/sys-devel/gcc-3.3.6-r1/work/gcc-3.3.6/gcc/collect2.c:1581:
/usr/include/bits/fcntl2.h:51: error: call to '__open_missing_mode' declared with attribute error: open with O_CREAT in second argument needs 3 arguments
make[2]: *** [collect2.o] Błąd 1
make[2]: Opuszczenie katalogu `/var/tmp/portage/sys-devel/gcc-3.3.6-r1/work/build/gcc'
make[1]: *** [stage1_build] Błąd 2
make[1]: Opuszczenie katalogu `/var/tmp/portage/sys-devel/gcc-3.3.6-r1/work/build/gcc'
make: *** [bootstrap-lean] Błąd 2
 *
 * ERROR: sys-devel/gcc-3.3.6-r1 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 4669:  Called toolchain_src_compile
 *             environment, line 5192:  Called gcc_src_compile
 *             environment, line 2996:  Called gcc_do_make
 *             environment, line 2787:  Called die
 * The specific snippet of code:
 *       emake LDFLAGS="${LDFLAGS}" STAGE1_CFLAGS="${STAGE1_CFLAGS}" LIBPATH="${LIBPATH}" BOOT_CFLAGS="${BOOT_CFLAGS}" ${GCC_MAKE_TARGET} || die "emake failed with ${GCC_MAKE_TARGET}";
 *  The die message:
 *   emake failed with bootstrap-lean
 *


Niestety tutaj nie znalazłem żadnego konkretu na bugzilli, aczkolwiek mogłem coś pominąć.

Code:
Portage 2.1.6.7 (default/linux/x86/2008.0, gcc-4.3.3, glibc-2.9_p20081201-r1, 2.6.28-gentoo-r1 i686)
=================================================================
System uname: Linux-2.6.28-gentoo-r1-i686-Intel-R-_Celeron-R-_M_processor_1400MHz-with-glibc2.0
Timestamp of tree: Fri, 30 Jan 2009 07:45:01 +0000
app-shells/bash:     3.2_p48
dev-lang/python:     2.5.4-r2
dev-util/cmake:      2.6.2-r1
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.4.2
sys-apps/sandbox:    1.3.3
sys-devel/autoconf:  2.13, 2.63
sys-devel/automake:  1.5, 1.9.6-r2, 1.10.2
sys-devel/binutils:  2.19
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6a
virtual/os-headers:  2.6.28-r1
ACCEPT_KEYWORDS="x86 ~x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://ftp.vectranet.pl/gentoo/ "
LANG="pl_PL"
LC_ALL="pl_PL"
LDFLAGS="-Wl,-O1"
LINGUAS="pl"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X acl alsa berkdb bzip2 cdr cli cracklib crypt cups dbus divx dri ffmpeg firefox fortran gdbm gif glitz gmedia gpm gtk gtk2 hal iconv ipv6 isdnlog jbig jpeg jpeg2k jpg live mad midi mikmod mp3 mp4 mudflap ncurses nls nptl nptlonly opengl openmp oss pam pcre pdf perl png pppd python qt3 qt4 quicktime readline realmedia realplayer reflection seamonkey session spl ssl svg symlink sysfs tcpd truetype unicode win32codecs wma wmp x86 xcb xcomposite xinerama xorg xscreensaver xulrunner xv xvid xvmc zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="pl" USERLAND="GNU" VIDEO_CARDS="intel"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY



Pomocy :oops:


Last edited by GHunterPL on Sat Jan 31, 2009 5:29 pm; edited 1 time in total
Back to top
View user's profile Send private message
Qlawy
Apprentice
Apprentice


Joined: 11 Jul 2006
Posts: 200

PostPosted: Fri Jan 30, 2009 7:24 pm    Post subject: Reply with quote

brawa, podwójne, jedne za pomysł i wykonanie, drugie za odszukanie tak starego systemu gdzie jeszcze gcc-3.* było.

opcje generalnie dwie masz:
1. Postawić system od nowa na tym co masz
2. chroot i emerge w chroocie z użyciem binarek z zewnętrznego hosta

generalnie metoda pierwsza poniekąd sprowadza się do drugiej.

Z takim bałaganem jak zrobiłeś, to moim zdaniem lepszym rozwiązaniem dla systemu byłoby odświeżenie go - tj zostawić konfigi i /home, a potem zainstalować nowy system, wiem, że to brzmi jak format c: ale to zajmie dużo mniej czasu i efekt jest raczej pewniejszy.
Back to top
View user's profile Send private message
GHunterPL
n00b
n00b


Joined: 01 Nov 2008
Posts: 60

PostPosted: Fri Jan 30, 2009 10:05 pm    Post subject: Reply with quote

Z użyciem zewnętrznych binarek- tzn. jakich? Skąd?
Back to top
View user's profile Send private message
Qlawy
Apprentice
Apprentice


Joined: 11 Jul 2006
Posts: 200

PostPosted: Fri Jan 30, 2009 10:59 pm    Post subject: Reply with quote

tych które są na livecd
Back to top
View user's profile Send private message
GHunterPL
n00b
n00b


Joined: 01 Nov 2008
Posts: 60

PostPosted: Fri Jan 30, 2009 11:35 pm    Post subject: Reply with quote

Minimal cd się kwalifikuje czy niebardzo?
Back to top
View user's profile Send private message
Belliash
Advocate
Advocate


Joined: 24 Nov 2004
Posts: 2503
Location: Wroclaw, Poland

PostPosted: Sat Jan 31, 2009 8:25 am    Post subject: Reply with quote

A mi sie nie chce wierzyc ze to jedyne wyjscia...
Jezeli dzisiaj instalujemy system... Mamy w nim GCC 3? NIE! Mamy w nim libstdc++? NIE!

Code:
PECET / # epm -qa | grep gcc
gcc-4.3.2
gcc-config-1.4.0-r4
PECET / # epm -qa | grep libstd
PECET / #


Zaten cos musi go zastepowac, albo w ogole nie jest potrzebny...
Na poczatek uzylbym opcji --tree ktora pokazalaby mi jaki pakiet wymaga libstdc++ ....
Wtedy moze bysmy cos poradzili... Moze to jakis program, moze da sie go usunac, zaktualizowac system i wtedy ponownie zainstalowac?
Ciezko powiedziec...

Aczkolwiek z racji iz lubie eksperymentowac, chetnie bym Ci pomogl ;)
A moze wspolnie znalezli bysmy jakies rozwiazanie... Oczywiscie nie moge nic zagwarantowac ale mysle ze nie ma takiego problemu ktorego nie daloby sie rozwiazac. Moze co najwyzej byc brak pomyslu na jego rozwiazanie 8)
_________________
Asio Software Technologies
Belliash IT Weblog
Back to top
View user's profile Send private message
GHunterPL
n00b
n00b


Joined: 01 Nov 2008
Posts: 60

PostPosted: Sat Jan 31, 2009 12:48 pm    Post subject: Reply with quote

Tak jak pisałem problem dotyczy libstdc++-v3, więc jego rozpatrywałem
Code:
notebook ~ # emerge libstdc++-v3 -t -p

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
[ebuild  N    ] sys-libs/libstdc++-v3-3.3.6  USE="nls nptl -build (-multilib)"


Jedyny zależny od niego pakiet to może być libstdc++, aczkolwiek... tego też pewien nie jestem.
Back to top
View user's profile Send private message
Belliash
Advocate
Advocate


Joined: 24 Nov 2004
Posts: 2503
Location: Wroclaw, Poland

PostPosted: Sat Jan 31, 2009 12:50 pm    Post subject: Reply with quote

GHunterPL wrote:
Tak jak pisałem problem dotyczy libstdc++-v3, więc jego rozpatrywałem
Code:
notebook ~ # emerge libstdc++-v3 -t -p

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
[ebuild  N    ] sys-libs/libstdc++-v3-3.3.6  USE="nls nptl -build (-multilib)"


Jedyny zależny od niego pakiet to może być libstdc++, aczkolwiek... tego też pewien nie jestem.



nie tak.....................................................

emerge -uDNpt world
_________________
Asio Software Technologies
Belliash IT Weblog
Back to top
View user's profile Send private message
GHunterPL
n00b
n00b


Joined: 01 Nov 2008
Posts: 60

PostPosted: Sat Jan 31, 2009 3:54 pm    Post subject: Reply with quote

Code:
notebook ~ # emerge -uDNpt world

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
[nomerge      ] virtual/libstdc++-3.3
[ebuild  N    ]  sys-libs/libstdc++-v3-3.3.6  USE="nls nptl -build (-multilib)"
notebook ~ #
Back to top
View user's profile Send private message
mziab
l33t
l33t


Joined: 01 Oct 2004
Posts: 644

PostPosted: Sat Jan 31, 2009 3:59 pm    Post subject: Reply with quote

Pokaż:
Code:
equery d libstdc++

_________________
Gentoo Linux 13.0 | 3.19 | glibc 2.19 | gcc 4.9.2

mteam | mziab's blog | roslin
Back to top
View user's profile Send private message
GHunterPL
n00b
n00b


Joined: 01 Nov 2008
Posts: 60

PostPosted: Sat Jan 31, 2009 4:06 pm    Post subject: Reply with quote

Code:
notebook ~ # equery d libstdc++
[ Searching for packages depending on libstdc++... ]
media-libs/win32codecs-20071007-r4 (real? =virtual/libstdc++-3.3*)
notebook ~ #
Back to top
View user's profile Send private message
mziab
l33t
l33t


Joined: 01 Oct 2004
Posts: 644

PostPosted: Sat Jan 31, 2009 4:19 pm    Post subject: Reply with quote

Wygląda na to, że to znany bug: #232102
_________________
Gentoo Linux 13.0 | 3.19 | glibc 2.19 | gcc 4.9.2

mteam | mziab's blog | roslin
Back to top
View user's profile Send private message
GHunterPL
n00b
n00b


Joined: 01 Nov 2008
Posts: 60

PostPosted: Sat Jan 31, 2009 4:25 pm    Post subject: Reply with quote

mziab wrote:
Wygląda na to, że to znany bug: #232102


Rozumiem że to jest lekarstwo na buga? Mam to dać w formie patcha do ebuilda?
Back to top
View user's profile Send private message
mziab
l33t
l33t


Joined: 01 Oct 2004
Posts: 644

PostPosted: Sat Jan 31, 2009 4:33 pm    Post subject: Reply with quote

Tak, do tego to się sprowadza :)
_________________
Gentoo Linux 13.0 | 3.19 | glibc 2.19 | gcc 4.9.2

mteam | mziab's blog | roslin
Back to top
View user's profile Send private message
GHunterPL
n00b
n00b


Joined: 01 Nov 2008
Posts: 60

PostPosted: Sat Jan 31, 2009 5:29 pm    Post subject: Reply with quote

Code:
>>> Installing sys-libs/libstdc++-v3-3.3.6
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.
notebook libstdc++-v3 #


Gra i trąbi ;)
Dzięki wielkie za pomoc :)
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Polskie forum (Polish) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum