No ani jsem to necetl, ale jsem rad ze se fedora nepoucila a opet tam nacpala nejnovejsi gcc 4.1 (je taky super, ze autor to bere jako neco "zajimaveho"). Musim uznat, ze fedora hell je opravdu SPICKA linuxoveho desktopu.
Takto ma RHEL aspon moznost otestovat ruzne veci, nez to nacpe do nejakych enterprise dist.
A co jako že tam je GCC 4.1? Většina aplikací je už schopna kompilace s tímto novým GCC, a ty co nejsou si zkompiluju s GCC 3.x, které je samozřejmě ve FC5 obsaženo. Je to prosté, každému co jeho jest. Někdo má rád Debian, někdo SUSE a někdo Fedoru. A každý také ví, jak a kde se dozvědět o existujících problémech a tyto problémy svojí oblíbené distribuce řešit.
Přesně tak. GCC 4.X je už v FC4 (teda alespoň v té mojí :-) ), a to od května 2005. Jestli prakticky za rok některé projekty nebyly upravené pro gcc4, tak to o něčem svědčí.
No prave, to je na tom to nejlepsi. V te dobe bylo GCC 4.1 (asi) uplne na zacatku a co se nestalo, fedora ho nacpalo do systemu. Parkrat jsem to videl a byly s tim akorat problemy. Zas chapu RHEL, jak jsem psal, alespon si otestuje jaky to bude delat problem.
Jinak, nez se nejaky kompilator prohlasi za stable, tak to nekdy trva hoodne mesicu (let) a nektere se ani stabilnimy neprohlasi.
to by me zajimalo o cem to svedci :)
Měl jsem FC3, přes apt-get jsem to upgradl na FC4. S tou příšlo i GCC4. Všechny moje programy (uznávám, nic světoborného) šli zkompilovat bez problémů (asi proto že píšu v ANSI C ;-) ). Za pár týdnů přišel patche na kernel, který jde zkompilovat taky bez problémů.
dmesg z mého stroje:
Linux version 2.6.15-1.1833_FC4 (bhcompile@hs20-bc1-1.build.redhat.com) (gcc version 4.0.2 20051125 (Red Hat 4.0.2-8)) #1 Wed Mar 1 23:41:37 EST 2006
Když se za chvilku povedlo vytvořit patch na kernel, proč to nejde i u ostatních projektů skoro po roce?
S fedorou nemam zkusenost, ale spoluzak to mel a zrovna s tim GCC 4.1 mel nejake nemile problemy. Jen pro info, neni to clovek co zrovna presel z XP... Proto se na nasazeni noveho GCC nedivam tak nadsene. Jinak zkomipolat neco vlastniho pod ANSI/ISO c99 je super, ale vetsinou to neni zadna parni mlaticka typu KDE... (teda predpokladam ze Vase projetky nejsou tak rozsahle :) ).
Zajimalo by me jakym GCC se fedora kompilovala (nebo ty predkompilovane balicky)?
Ja vidim:
2.6.15-1.2054_FC5 gcc version 4.1.0 20060304
Cela fedora by mela byt kompilovana "nejhure" s prereleasem gcc 4.1 a podle me dostupnych informaci vyvojari Fedory peclive sledovali jake zmeny byly do finalni verze 4.1 provedeny a zda by mohli mit nejaky podstatny vliv. Myslim, ze cast baliku se pak jiz s finalnim 4.1 neprekompilovavala, protoze zmeny byly shledany nepodstatnymi.
Povsimnete si PR26755: binarni nekompatibilita mezi gcc4.0 a gcc4.1 (i kdyz je to chyba v gcc4.0, tak stale nas to nechava s moznou binarni nekompatibilitou mezi 4.0 a 4.1)...
Takze asi tak ke GCC 4.1...
Compiler bugs in GCC 4.1
------------------------
- gcc ICE: #356231 (gnubik_2.2-5) http://gcc.gnu.org/PR26672 - fixed
- g++ ICE: #356569 (3ddesktop_0.2.9-5.1) http://gcc.gnu.org/PR26757 - test case needs further reduction
- gcc bug: #356574 (address of register requested) http://gcc.gnu.org/PR26004 - fixed
- g++ bug: #356548 (cannot bind packed field) http://gcc.gnu.org/PR26670 - not yet assigned but related to known bugs
- g++ bug: #356435 (no constructor) [package bug: #356245] http://gcc.gnu.org/PR26755 - waiting
This is a binary incompatibility! 4.0 has a different behaviour to
3.3 and 4.1, which means that linking 4.1 code against 4.0 libraries
may fail. 4.0 and 4.1 were supposed to be binary compatible so I'm not
sure what will be done about this.
- gcc bug: #356896 (miscompiles code, leading to segfault in program) http://gcc.gnu.org/PR26763 - confirmed
- gcc or autoconf bug: #358644 (change in behaviour on mips regarding
-fstack-protector)
It's not clear right now whether this behaviour change was correct and
autoconf should be changed or whether GCC should revert that change.
Fortunately, this change only breaks 2 packages out of ~6200.
Neviem aky suvis ma zoznam chyb prekladaca s tym co je prekladane, predpokladam ze vyvojari FC su natolko doma v tejto oblasti ze vedia posudit ktore chyby v gcc su dolezite a ktore nie. Urcite naprosta vacsina predpokladam potrebuje urcite specialne jazykove konstrukcie alebo podmienky aby sa prejavila.
Chyby, které jsem posílal, byly nalezeny až při kompilaci balíků v debianu *po* vydání gcc4.1 a podle mě to souvisí docela hodně, nicméně jsem tím chtěl poukázat na to, že když byly balíky kompilovány _prerelease_ gcc4.1, tak to nutně nemuselo dopadnout dobře.
RedHat je inovativni a tlaci technologie dopredu. Za to mu patri dik. Diky nemu pouzivame na linuxu utf-8, kdy nasel v RH8 odvahu ho nasadit, i kdyz to nebylo jeste bez problemove. Jenze cekat az to bude bezproblemove by znamenalo cekat do dnes. RedHat je tahoun a ostatni distribuce se za nim vezou. Snad kazdy vi, ze fedora pro RedHat predstavuje testovaci system a kdo potrebuje zarucenou kvalitu a stabilitu, ten si misto fedory poridi rhel. Pri tom kazdy zajemce o rhel ve vlastnim zajmu muze testovat fedory a upozornovat na pripadne problemy. Je to ferovy postup.