LINUX.ORG.RU

Gentoo, версии gcc


0

1
┌ ~ 
└ equery m gcc
 * sys-devel/gcc [gentoo]
Herd:        toolchain (toolchain@gentoo.org)
Maintainer:  None specified
Upstream:    None specified
Homepage:    http://gcc.gnu.org/
Location:    /usr/portage/sys-devel/gcc
Keywords:    2.95.3-r9:2.95: alpha ppc sparc x86
Keywords:    2.95.3-r10:2.95: ~alpha ~ppc ~sparc ~x86
Keywords:    3.1.1-r2:3.1: sparc x86 -ppc
Keywords:    3.2.2:3.2: 
Keywords:    3.2.3-r4:3.2: alpha ia64 ppc s390 sparc x86 ~mips -hppa
Keywords:    3.3.6-r1:3.3: ~amd64 ~x86
Keywords:    3.4.6-r2:3.4: alpha amd64 arm ppc ppc64 sh sparc x86 ~ia64 ~mips ~s390 -* ~x86-fbsd
Keywords:    4.0.4:4.0: ~ia64 ~m68k -*
Keywords:    4.1.2:4.1: alpha amd64 arm hppa ia64 ppc ppc64 s390 sh sparc x86 ~m68k ~mips -* ~sparc-fbsd ~x86-fbsd
Keywords:    4.2.4-r1:4.2: hppa ~alpha ~amd64 ~arm ~ia64 ~m68k ~ppc ~ppc64 ~sparc ~x86 ~sparc-fbsd ~x86-fbsd
Keywords:    4.3.3-r2:4.3: -hppa
Keywords:    4.3.4:4.3: alpha amd64 arm ia64 ppc ppc64 s390 sh sparc x86 -hppa
Keywords:    4.3.5:4.3: -hppa
Keywords:    4.3.6-r1:4.3: ~alpha ~amd64 ~arm ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd -hppa
Keywords:    4.4.2:4.4: -hppa -sparc
Keywords:    4.4.3-r3:4.4: -hppa
Keywords:    4.4.4-r2:4.4: 
Keywords:    4.4.5:4.4: alpha amd64 arm ia64 ppc ppc64 s390 sh sparc x86
Keywords:    4.4.6-r1:4.4: hppa ~alpha ~amd64 ~arm ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd
Keywords:    4.5.1-r1:4.5: 
Keywords:    4.5.2:4.5: 
Keywords:    4.5.3-r1:4.5: amd64 ppc ppc64 x86 ~alpha ~arm ~hppa ~ia64 ~m68k ~mips ~s390 ~sh ~sparc ~x86-fbsd
Keywords:    4.6.0:4.6: 
Keywords:    4.6.1-r1:4.6: 

4.4.6-r1:4.4: ~amd64

4.5.3-r1:4.5: amd64

Как так? Спасибо.

ЗЫ: вообще, я на ~amd64 перехожу:

┌ ~ 
└ gcc-config -l    
 [1] x86_64-pc-linux-gnu-4.4.6 *
 [2] x86_64-pc-linux-gnu-4.5.3
Может, таки поставить второй? Или не зря для ~amd64 установлена именно эта версия?

>Как так?

А что странного? Это уже другая ветка, вообще-то. В системе может быть одновременно и gcc 4.4, и gcc 4.5. А замаскировать пакет старой версии могут из-за какого-то серьёзного бага, исправленного в новой версии.

gentoo_root ★★★★★ ()
Ответ на: комментарий от kermzyxer

>Так каким лучше пользоваться?

Смотря для чего. В новых версиях запиливают более крутые оптимизации, поэтому, если это представляет интерес, можно заюзать последнюю версию. Если это не нужно — можно вообще компилятор не обновлять, пока через несколько лет какая-то программа перестанет собираться. У меня стоит самый свежий gcc из ~x86, всё нормально работает.

gentoo_root ★★★★★ ()
Ответ на: комментарий от gentoo_root

Нет, меня что смущает:
У меня стаял gcc 4.5 из arch. при «обновлении» gcc до ~arch, emerge притащил мне версию 4.4, поставил ее в слот и установил, как основную.
Если сделать emerge --prune gcc, то он удалит версию из ~arch, оставит из arch. Спрашивается: а нифага emerge поставил более старую версию? Может, gcc 4.5 плохо работает с веткой ~arch?

kermzyxer ()
Ответ на: комментарий от kermzyxer

Видимо, разработчиками не подразумевалось, что emerge будет так делать, и версия gcc 4.5 предназначена для обоих веток...

kermzyxer ()
Ответ на: комментарий от kermzyxer

>Может, gcc 4.5 плохо работает с веткой ~arch?

emerge об этом всё равно не знает.

при «обновлении» gcc до ~arch, emerge притащил мне версию 4.4, поставил ее в слот и установил, как основную.

Возможно, в @world записан не sys-devel/gcc, а, например, sys-devel/gcc:4.4, если уже был установлен gcc 4.4 более старой версии, или что-то ещё.

gcc 4.4.6, кстати, у меня почему-то в package.mask. Не помню, зачем я его туда занёс, но это было не просто так.

gentoo_root ★★★★★ ()
Ответ на: комментарий от morse

Кстати, где-нибудь есть хорошее руководство по грамотной настройке lto graphite и прочик багогенных вещей?

morse ★★★★★ ()
Ответ на: комментарий от kermzyxer

gcc-config установкой умолчательной версии занимается, а не портеж

anonymous ()
Ответ на: комментарий от morse

С -flto далеко не все собирается, по крайней мере в 4.5.3. И совсем не работает distcc...

madcore ★★★★★ ()
Ответ на: комментарий от kermzyxer

из оверлеев не хочу )

Слоупочишь?

madcore@madhome ~/kvm $ eix -I sys-devel/gcc
[I] sys-devel/gcc
     Available versions:  
        (2.95)  2.95.3-r9 ~2.95.3-r10!s
        (3.1)   3.1.1-r2
        (3.2)   **3.2.2!s 3.2.3-r4
        (3.3)   ~3.3.6-r1!s
        (3.4)   3.4.6-r2!s
        (4.0)   ~*4.0.4!s
        (4.1)   4.1.2!s
        (4.2)   ~4.2.4-r1!s
        (4.3)   ~4.3.3-r2!s 4.3.4!s ~4.3.5!s ~4.3.6-r1!s
        (4.4)   ~4.4.2!s ~4.4.3-r3!s 4.4.4-r2!s 4.4.5!s ~4.4.6-r1!s
        (4.5)   ~4.5.1-r1!s ~4.5.2!s 4.5.3-r1!s
        (4.6)   [M]**4.6.0!s [M]**4.6.1-r1!s

madcore ★★★★★ ()
Ответ на: комментарий от kermzyxer

>Кстати, как из себф paludis?

Поюзал немного на одной Генте, но с переходом на KDE на другой Генте и выпиливанием первой почему-то перестал. Наверное, потерялась нужда в ‘cave import’ — единственном для меня преимуществе paludis'а. А так нормальный менеджер пакетов, но с точки зрения пользователя больше преимуществ я не нашёл.

gentoo_root ★★★★★ ()

В оверлее jeanfactoryroy есть новейший GCC 4.6.1.

LongLiveUbuntu ★★★★★ ()
Ответ на: комментарий от kermzyxer

>для запросов есть eix

Кстати, более годного поиска я не видел, и использовал eix даже с paludis. В paludis поиск страшно медленный, а eix — почти мгновенный.

gentoo_root ★★★★★ ()
Ответ на: комментарий от gentoo_root

плюсую eix. Очень удобный, и вывод приятный

XVilka ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.