View previous topic :: View next topic |
Author |
Message |
Bithammer Tux's lil' helper
Joined: 30 Aug 2004 Posts: 100 Location: Mainhatten
|
Posted: Thu Aug 24, 2006 7:13 am Post subject: GCC update wegen Architektur |
|
|
Mein Problem:
Ich benutze seit einer weile Gentoo auf meinem Laptop das einen Pentium M Prozessor hat. Ich habe das system gebaut mit einem GCC 3.3 der die MARCH flag Pentium M nicht unterstützt. Deswegen ist sogut wie alles mit MARCH P4 übersetzt.
Nun habe ich mit GCC config die versionsnummer von 3.3 auf 3.4 gesetzt - damit kann ich auch Pentium M architektur auswählen in der make.profile.
Da ich in mit gcc-config ein anderes Profil auswählen kann - kann ich dann an für sich davon ausgehen das ich vorher schon einen 3.4 er GCC hatte den ich im "kompatibilitäts" modus für 3.3 verwendet hatte. (GCC hatte ich nicht neu gemergt)
http://www.gentoo.org/doc/en/gcc-upgrading.xml#upgrade-3.3-to-3.4
diese prozedure muss ich ja dann an für sich nicht durchlaufen.
Wenn man auf einen neueren GCC switcht - (etwa 4.1 - welche vorteile bringt das ausser mehr unterstütze Architekturen ?) besseren code ? Ein rebuild des Systems ist dann allerdings unausweichlich ? |
|
Back to top |
|
|
franzf Advocate
Joined: 29 Mar 2005 Posts: 4565
|
Posted: Thu Aug 24, 2006 8:26 am Post subject: |
|
|
Hier steht alles über gcc updaten usw.
Ich fahre seit einiger Zeit den gcc-4.1.1 und hab grad ein anderes System umgestellt (von 3.4.5). Alles läuft bestens, nur selten macht ein Paket Probleme, dann einfach unmasken und es klappt.
Der Code mit dem GCC-4.1.1 soll schneller sein, ich bilde mir ein das zu merken...
Wenn du eh upgraden willst lohnt sich das vllt.
Um das emerge -e world einfach durchzuziehen (und überhaupt als gelungener, nützlicher emerge-wrapper) lohnt sich das mymerge-script
Grüße
Franz |
|
Back to top |
|
|
Bithammer Tux's lil' helper
Joined: 30 Aug 2004 Posts: 100 Location: Mainhatten
|
Posted: Thu Aug 24, 2006 9:14 am Post subject: |
|
|
Hmmm ich hab jetzt das problem das der gcc 3.4 neu gemergt werden will weil ich -newuse gemacht habe und jetzt ntl aktiviert ist - obwohl er jetzt march -pentium-m aktzeptiert - übersetzt er sich selber ungern mit diesem architektur flag.
/cat/proc/cpuinfo
Code: | gcc -vprocessor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 13
model name : Intel(R) Pentium(R) M processor 1.60GHz
stepping : 6
cpu MHz : 1596.183
cache size : 2048 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr mce cx8 sep mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss tm pbe up est tm2
bogomips : 3195.11 |
gcc -v sagt :
Code: | Reading specs from /usr/lib/gcc/i686-pc-linux-gnu/3.4.6/specs
Configured with: /var/tmp/portage/gcc-3.4.6-r1/work/gcc-3.4.6/configure --prefix=/usr --bindir=/usr/i686-pc-linux-gnu/gcc-bin/3.4.6 --includedir=/usr/lib/gcc/i686-pc-linux-gnu/3.4.6/include --datadir=/usr/share/gcc-data/i686-pc-linux-gnu/3.4.6 --mandir=/usr/share/gcc-data/i686-pc-linux-gnu/3.4.6/man --infodir=/usr/share/gcc-data/i686-pc-linux-gnu/3.4.6/info --with-gxx-include-dir=/usr/lib/gcc/i686-pc-linux-gnu/3.4.6/include/g++-v3 --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu --disable-altivec --enable-nls --without-included-gettext --with-system-zlib --disable-checking --disable-werror --disable-libunwind-exceptions --disable-multilib --disable-libgcj --enable-languages=c,c++,objc --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu
Thread model: posix
gcc version 3.4.6 (Gentoo 3.4.6-r1, ssp-3.4.5-1.0, pie-8.7.9) |
emerge --info sagt
Code: |
Portage 2.1-r2 (default-linux/x86/2006.0, gcc-3.4.6, glibc-2.3.6-r4, 2.6.17-gent oo-r4 i686)
=================================================================
System uname: 2.6.17-gentoo-r4 i686 Intel(R) Pentium(R) M processor 1.60GHz
Gentoo Base System version 1.12.4
app-admin/eselect-compiler: [Not Present]
dev-lang/python: 2.3.5-r2, 2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache: [Not Present]
dev-util/confcache: [Not Present]
sys-apps/sandbox: 1.2.17
sys-devel/autoconf: 2.13, 2.59-r7
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils: 2.16.1-r3
sys-devel/gcc-config: 1.3.13-r3
sys-devel/libtool: 1.5.22
virtual/os-headers: 2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium-m -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shu tdown /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/ 3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/ share/config /var/qmail/alias /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-O2 -march=pentium-m -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer sfperms strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/ distributions/gentoo"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/d istfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.de.gentoo.org/gentoo-portage"
USE="x86 X X509 aac acl acpi acpi4linux activefilter aim amd ansi apache2 aper a red aredmem arts audiofile beepmp bitmap-fonts bootspla bzip2 bzlib c cairo cdb cddb cdf cdinstall cdrom cdrw chroot codecs curl curlwrappers dedicated devfs de vfs26 devmap dga dhcp dio distcache distribution divx4linux dlloader dmx dnd dri dts dvd dvdr dvdread emacs emacs-w3 escreen ethereal etwin exif f2c faac faad f at fbcon fbdev fbsplash ffmpeg fftw firefox flood fmod font-server fontconfig fr eewnn fs ftp gimp gimpprint glut gmp gsnd gstreamer gtk gtk2 hal hfs high-ints h owl hub icq icu idea imap imlib2 immqt-bc ipod iproute2 ipv6 ipv6arpa irda irmc isdn jabber javadoc joystick kadu-modules kadu-voice kerberos koffice-plugin krb 4 latex ldirectord live lm_sensors lmtp lynxkeymap mad makecheck md5sum memlimit mha mime minimal mmx mmx2 modperl monkey mozaccess mozilla mozp3p mp3 mpeg4 mpl ayer mppe-m msql mssql music mysqli mythtv ncurses net network neural nis nls nn tp nptl nptlonly ntlm nvidia oav objc offensive openal opengl opens openssh osca r pam pam-mysql pcre pdf pdfkit php physfs pic png pnp portaudio posix postgresq l povray prelude qt qt3 rplay rtc serial session sftplogging slp smartcard sndfi le sockets socks5 softquota sounds spamassassin sse sse2 ssl stencil-buffer stre amzap stroke szip t1lib uim usb userlocales v4l v4l2 vcd vcdimager vhosts videos vnc vorbis wifi win32codecs wmf xchatdccserver xface xforms xfs xim xine xinera ma xmlrpc xmms xosd xpm xrandr xscreensaver xsl xv xvid xvmc yahoo yv12 elibc_gl ibc input_devices_keyboard input_devices_mouse kernel_linux userland_GNU video_c ards_nvidia video_cards_fbdev video_cards_vesa"
Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGU AS, MAKEOPTS, PORTAGE_RSYNC_EXTRA_OPTS
|
Ziel des ganzen soll sein alle pakete mit pentium-m architektur zu übersetzen - wobei ich dort laut wiki auch sehr wiedersprüchliche aussagen gefunden habe:
http://gentoo-wiki.com/Safe_Cflags#Pentium_M.28Centrino.29.2FCeleron_M_.28Intel.29 |
|
Back to top |
|
|
Klaus Meier Advocate
Joined: 18 Apr 2005 Posts: 2908 Location: Bozen
|
Posted: Thu Aug 24, 2006 3:27 pm Post subject: |
|
|
franzf wrote: | Hier steht alles über gcc updaten usw.
Ich fahre seit einiger Zeit den gcc-4.1.1 und hab grad ein anderes System umgestellt (von 3.4.5). Alles läuft bestens, nur selten macht ein Paket Probleme, dann einfach unmasken und es klappt.
Der Code mit dem GCC-4.1.1 soll schneller sein, ich bilde mir ein das zu merken...
Wenn du eh upgraden willst lohnt sich das vllt.
Um das emerge -e world einfach durchzuziehen (und überhaupt als gelungener, nützlicher emerge-wrapper) lohnt sich das mymerge-script
Grüße
Franz |
Also mymerge ist ja genial, sowas habe ich schon lange gesucht, nett, per Zufall auf sowas gestoßen zu sein.
Aber zu deinem Link, wo alles über gcc updaten steh, da gibt es eine Unterseite: TIP Testing GCC 4.1. Und da stehen ja recht agressive Optimierungen drin. Hast du die mal probiert? Gibt es Vorteile, Probleme? |
|
Back to top |
|
|
|
|
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
|
|