| View previous topic :: View next topic |
| Author |
Message |
Christian99 l33t

Joined: 28 May 2009 Posts: 696
|
Posted: Tue Jun 12, 2012 7:26 am Post subject: gcc version für bestimmte pakete ändern |
|
|
Hi, ich verwende normalerweise gcc-4.7 seit er im portage ist. leider funktioniert er für einzelne pakete (noch) nicht. kann ich für einzelne Pakete die compilerversion ändern?
schöne Grüße
Christian |
|
| Back to top |
|
 |
Max Steel Veteran


Joined: 12 Feb 2007 Posts: 1941 Location: My own world! I and Gentoo!
|
Posted: Tue Jun 12, 2012 7:34 am Post subject: |
|
|
Versuch mal über die /etc/portage/env/ Dateien was zu drehen. Habs selber noch nicht ausprobiert, aber wenns für einzelne Dateien sein soll kann man da vielleicht etwas managen (diese Dateien werden ausgewertet wie Shell-scripte.) _________________ mfg
Steel
___________________
Big sorry for my bad English.
Heim-PC: AMD Phenom II X4 3,2GHz, 16GB RAM, gentoo-sources-3.9.3, NV GTX 550
Laptop: Intel Celeron 1,7GHz, 512MB Ram, tuxonice-sources-3.7.1, SIS Graphic
Version 0.4 |
|
| Back to top |
|
 |
Christian99 l33t

Joined: 28 May 2009 Posts: 696
|
Posted: Tue Jun 12, 2012 9:03 am Post subject: |
|
|
| Danke, was muss ich denn da setzen? CC und CXX oder noch mehr? |
|
| Back to top |
|
 |
bbgermany Veteran


Joined: 21 Feb 2005 Posts: 1404 Location: Oranienburg/Germany
|
Posted: Tue Jun 12, 2012 10:23 am Post subject: |
|
|
Hi,
ich hatte grad das gleiche Problem mit cmake und gcc-4.6.3.
Meine normalen CFLAGS mit "-march=corei7-avx -O2 -pipe" wollte das Paket nicht. Also fix die Datei /etc/protage/env/dev-util/cmake mit folgendem Inhalt erstellt:
| Code: |
CFLAGS="-O0 -pipe"
CXXFLAGS="${CFLAGS}"
|
und schon gings.
MfG Stefan _________________ 1st: C2D 3GHz, 8GB, 2.25TB, HD4850
2nd: Celeron 2.6GHz, 2GB, 500GB, HD4350
3rd: TP X220, 2,5GHz, 8GB, 320GB, HD3000
4th: Athlon X2 BE-2300, 4GB, 64GB SSD + 3TB RAID5 GF7025
5th: Samung N350, 2GB, 250GB, HD3150
6th: Rasperry Pi, 512MB, 32GB SD |
|
| Back to top |
|
 |
Christian99 l33t

Joined: 28 May 2009 Posts: 696
|
Posted: Tue Jun 12, 2012 11:39 am Post subject: |
|
|
| das ist schon klar, aber ich wollte wissen was für variablen ich setzen muss um den Compiler zu ändern. |
|
| Back to top |
|
 |
bell Guru


Joined: 27 Nov 2007 Posts: 361
|
Posted: Thu Jun 14, 2012 5:54 pm Post subject: |
|
|
Ich würde sowas in die Globale Konfigurationsdatei /etc/portage/bashrc packen:
(pseudo-code / ungetestet)
| Code: | case $PN in
app-xxx/xxx )
GCC_NEEDED=x86_64-pc-linux-gnu-4.7.0;;
app-yyy/yyyy )
GCC_NEEDED=x86_64-pc-linux-gnu-4.7.0;;
* ) # default
GCC_NEEDED=x86_64-pc-linux-gnu-4.5.3;;
esac
if [ $(gcc-config -c) != $GCC_NEEDED ]; then
gcc-config $GCC_NEEDED
fi |
Wenn es funktioniert, so wird vor jedem Bau geprüft welcher GCC benötigt wird und ggf. gewechselt.
Falls Du das Skript fertig hast, bitte posten Wie gesagt, bisher ist es nur eine Idee. |
|
| Back to top |
|
 |
Klaus Meier Advocate


Joined: 18 Apr 2005 Posts: 2159 Location: Bozen
|
Posted: Thu Jun 14, 2012 6:43 pm Post subject: |
|
|
Noch ein Tip von mir. Ich habe vor kurzem auch mit dem 4.7 experimentiert. Lass besser noch die Finger von. Einige Anwendungen, die sich übersetzen ließen, sind dann abgestürzt. Und das merkt man so direkt wirklich nur, wenn es eine Desktopanwendung ist. Es sind aber in den letzten Tagen auch viele neue Patches für den 4.7 eingepflegt worden. Vielleicht ist die Situation jetzt ja besser.
Aber denk immer dran, wenn seltsames passiert. |
|
| Back to top |
|
 |
mv Advocate


Joined: 20 Apr 2005 Posts: 3226
|
Posted: Thu Jun 14, 2012 7:14 pm Post subject: |
|
|
| Klaus Meier wrote: | | Einige Anwendungen, die sich übersetzen ließen, sind dann abgestürzt. |
So ein Problem hatte ich bei keinem Paket. Kannst Du Pferd und Reiter nennen? |
|
| Back to top |
|
 |
Klaus Meier Advocate


Joined: 18 Apr 2005 Posts: 2159 Location: Bozen
|
Posted: Thu Jun 14, 2012 7:48 pm Post subject: |
|
|
| mv wrote: | | Klaus Meier wrote: | | Einige Anwendungen, die sich übersetzen ließen, sind dann abgestürzt. |
So ein Problem hatte ich bei keinem Paket. Kannst Du Pferd und Reiter nennen? |
Eine Anwendung war Evolution in einer Version von 3.4. Weiß jetzt nicht mehr, ob 3.4.1 oder 3.4.2. Und dann bin ich ganz schnell wieder zurück zum gcc-4.5.3. Der 4.6.3 war damals noch hardmasked. Ob es noch eine andere Anwendung war, kann ich nicht mehr sagen. Es kann auch an einer Bibliothek liegen, die Evolution nutzt.
Aber: Die Binaries waren im Vergleich zum 4.5.3 schon deutlich kleiner.
Und ansonsten: Warum für einige Pakete den 4.6.3 fest eintragen? Du übersetzt dein System mit 4.6.3. Und dann ein emerge -e mit 4.7.0. Die Pakete, die nicht durchgehen, hast du ja sowieso schon. Und die Updates machst du dann halt wieder mit dem 4.7.0. Und die, die nicht durchgehen, da schaltest du wieder auf den 4.6.3 um. Sonst übersetzt du einiges mit dem 4.6.3, was schon längst mit dem 4.7.0 geht. Denn da gibt es ein Feature:
| Code: | # ChangeLog for media-video/vdr
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/media-video/vdr/ChangeLog,v 1.163 2012/$
10 Jun 2012; Joerg Bornkessel <hd_brummy@gentoo.org> -vdr-1.6.0_p2-r9.eb$
vdr-1.6.0_p2-r10.ebuild, +files/vdr-1.6.0_p2_gcc-4.7.patch,
-files/vdr-1.6.0_p2_linguas.diff:
fixed gcc-4.7 compile; cleanup; strip-linguas en fixing |
Es werden ebuilds aktualisiert, ohne dass die Version der Anwendung hochgezählt wird. Also wird diese Anwendung beim Updaten auch nicht neu übersetzt. Ich würde da eine Liste anlegen mit Anwendungen, die sich mit dem 4.7.0 nicht übersetzen lassen und dann sporadisch mal die Changelogs ansehen. |
|
| Back to top |
|
 |
mv Advocate


Joined: 20 Apr 2005 Posts: 3226
|
Posted: Thu Jun 14, 2012 8:47 pm Post subject: |
|
|
| Klaus Meier wrote: | | Eine Anwendung war Evolution in einer Version von 3.4. |
Ah, Gnome. Das habe ich hier nicht, und wenn schon ein Gnome-nahes Tool dann nur mit USE=-introspection. Das kann die unterschiedliche Erfahrung erklären. Aber:
| Quote: | | Der 4.6.3 war damals noch hardmasked. |
Du sprachst von 4.7. Meiner Erfahrung nach gab es von 4.6 auf 4.7 (im Gegensatz zu 4.5 auf 4.6) kaum Probleme. Große Ausnahme sind hardened-sources, aber das ist ein "hausgemachtes" Problem von hardened. Eine Laufzeit-Regression hatte ich auch mit 4.7 und firefox, aber die hatte mit graphite zu tun (und scheint nicht alle Benutzer zu betreffen). |
|
| Back to top |
|
 |
Klaus Meier Advocate


Joined: 18 Apr 2005 Posts: 2159 Location: Bozen
|
Posted: Fri Jun 15, 2012 5:29 am Post subject: |
|
|
| Kann es jetzt ja noch mal versuchen, mache dann vorher am einfachsten ein Backup... |
|
| Back to top |
|
 |
franzf Advocate


Joined: 29 Mar 2005 Posts: 3582 Location: Irgendwo im Nirgendwo
|
Posted: Fri Jun 15, 2012 5:50 am Post subject: |
|
|
Neben dem dass gestern gcc-4.7.1 released wurde und heute im Tree gelandet ist...
| Klaus Meier wrote: | Denn da gibt es ein Feature:
| Code: | # ChangeLog for media-video/vdr
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/media-video/vdr/ChangeLog,v 1.163 2012/$
10 Jun 2012; Joerg Bornkessel <hd_brummy@gentoo.org> -vdr-1.6.0_p2-r9.eb$
vdr-1.6.0_p2-r10.ebuild, +files/vdr-1.6.0_p2_gcc-4.7.patch,
-files/vdr-1.6.0_p2_linguas.diff:
fixed gcc-4.7 compile; cleanup; strip-linguas en fixing |
Es werden ebuilds aktualisiert, ohne dass die Version der Anwendung hochgezählt wird. |
Da gibt es ein Feature "hardmasked". Wenn ein Paket nicht richtig mit einem hart maskierten Paket zusammen arbeitet, dann fügt man einfach einen Patch ein ohne RevBump. Die zwei Alternativen wären 1) revbump und dadurch ALLEN die nicht bleeding edge fahren, ein rebuild aufhalsen, für etwas das sie gar nicht tangiert oder 2) Ein hart maskiertes revbump nur für die harten Jungs.
Nachteile sind offensichtlich:
1) Generiert viel zu viele rebuilds, der normalo User wird sich beschweren.
2) Wer soll das noch warten?!? _________________ "der mac dennoch wesen geil"
Wolfram von Eschenbach, Parzival (Buch 1, Z. 7).
Ein frühes Statement gegen Windows.
My overlay |
|
| Back to top |
|
 |
Klaus Meier Advocate


Joined: 18 Apr 2005 Posts: 2159 Location: Bozen
|
Posted: Fri Jun 15, 2012 6:01 am Post subject: |
|
|
Da hat sich wohl in der letzten Zeit einiges getan. 4.7.1 klingt gut. Werde es wohl mal erneut testen.
Ok, lief beim Frühstück nebenher: evolution-3.4.2 mit gcc-4.7.1 übersetzt funktioniert. Na dann werde ich jetzt mal emerge -e world machen und heute abend schauen, was passiert ist. |
|
| Back to top |
|
 |
Klaus Meier Advocate


Joined: 18 Apr 2005 Posts: 2159 Location: Bozen
|
Posted: Fri Jun 15, 2012 6:06 pm Post subject: |
|
|
Na ich hab es mal wieder versucht, folgendes ging nicht durch:
| Code: | =dev-libs/crypto++-5.6.1-r3
=sys-devel/binutils-2.22-r1
=media-plugins/gst-plugins-ffmpeg-0.10.13-r1
=net-libs/webkit-gtk-1.8.1-r30 |
Zu den binutils gab es eben gerade einen Patch, die gehen jetzt auch. libreoffice werde ich mal über Nacht testen. Bislang funktioniert alles, aber habe ja noch nicht viel ausprobiert. |
|
| Back to top |
|
 |
|