Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[gcc-4.4.1] File collision - Retours d'expérience (résolu)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
razer
l33t
l33t


Joined: 08 Oct 2004
Posts: 893
Location: Paris - France

PostPosted: Sat Oct 10, 2009 10:44 am    Post subject: [gcc-4.4.1] File collision - Retours d'expérience (résolu) Reply with quote

Hello,

J'essaye de mettre à jour gcc : 4.3.4 -> 4.4.1
Je suis sujet à des problèmes de collisions avec l'ancienne version.
De là, les questions :
J'ai bien trouvé une astuce pour passer outre les erreurs d'emerge concernant ces collisions, via la variable FEATURES, mais je suppose que mon gcc-4.3.4 deviendra inutilisable, risque que je refuse de prendre. Merci de préciser ce point
Si je décide d'utiliser ce tweak, est ce possible de réaliser l'emerge sans que la compilation soit refaite ? J'ai une version qui a déjà compilé sans soucis, juste l'emerge bloque
Par ailleurs, est ce que des personnes ici ont réalisé cette migration et peuvent me donner leur retour d'expérience ?

Merci d'avance
Voici le log :
Code:
 * Messages for package sys-devel/gcc-4.4.1:

 * This package will overwrite one or more files that may belong to other
 * packages (see list below). You can use a command such as `portageq
 * owners / <filename>` to identify the installed package that owns a
 * file. If portageq reports that only one package owns a file then do
 * NOT file a bug report. A bug report is only useful if it identifies at
 * least two or more packages that are known to install the same file(s).
 * If a collision occurs and you can not explain where the file came from
 * then you should simply ignore the collision since there is not enough
 * information to determine if a real problem exists. Please do NOT file
 * a bug report at http://bugs.gentoo.org unless you report exactly which
 * two packages install the same file(s). Once again, please do NOT file
 * a bug report unless you have completely understood the above message.
 *
 * Detected file collision(s):
 *
 *    /usr/lib64/libgomp.spec
 *    /usr/lib64/libmudflap.a
 *    /usr/lib64/libmudflapth.la
 *    /usr/lib64/libsupc++.la
 *    /usr/lib64/libstdc++.la
 *    /usr/lib64/libstdc++_pic.a
 *    /usr/lib64/libmudflap.so.0.0.0
 *    /usr/lib64/libgomp.so.1.0.0
 *    /usr/lib64/libstdc++.a
 *    /usr/lib64/libmudflapth.a
 *    /usr/lib64/libmudflap.la
 *    /usr/lib64/libgomp.la
 *    /usr/lib64/libgomp.a
 *    /usr/lib64/libgcc_s.so.1
 *    /usr/lib64/libmudflapth.so.0.0.0
 *    /usr/lib64/libsupc++.a
 *    /usr/lib32/libgomp.spec
 *    /usr/lib32/libmudflap.a
 *    /usr/lib32/libmudflapth.la
 *    /usr/lib32/libsupc++.la
 *    /usr/lib32/libstdc++.la
 *    /usr/lib32/libstdc++_pic.a
 *    /usr/lib32/libmudflap.so.0.0.0
 *    /usr/lib32/libgomp.so.1.0.0
 *    /usr/lib32/libstdc++.a
 *    /usr/lib32/libmudflapth.a
 *    /usr/lib32/libmudflap.la
 *    /usr/lib32/libgomp.la
 *    /usr/lib32/libgomp.a
 *    /usr/lib32/libgcc_s.so.1
 *    /usr/lib32/libmudflapth.so.0.0.0
 *    /usr/lib32/libsupc++.a
 *    /usr/lib64/libmudflap.so.0
 *    /usr/lib64/libgomp.so
 *    /usr/lib64/libstdc++.so
 *    /usr/lib64/libmudflapth.so
 *    /usr/lib64/libgomp.so.1
 *    /usr/lib64/libmudflapth.so.0
 *    /usr/lib64/libgcc_s.so
 *    /usr/lib64/libmudflap.so
 *    /usr/lib64/libstdc++.so.6
 *    /usr/lib32/libmudflap.so.0
 *    /usr/lib32/libgomp.so
 *    /usr/lib32/libstdc++.so
 *    /usr/lib32/libmudflapth.so
 *    /usr/lib32/libgomp.so.1
 *    /usr/lib32/libmudflapth.so.0
 *    /usr/lib32/libgcc_s.so
 *    /usr/lib32/libmudflap.so
 *    /usr/lib32/libstdc++.so.6
 *
 * Searching all installed packages for file collisions...
 *
 * Press Ctrl-C to Stop
 *
 * sys-devel/gcc-4.3.4
 *    /usr/lib32/libgcc_s.so
 *    /usr/lib32/libgcc_s.so.1
 *    /usr/lib32/libgomp.a
 *    /usr/lib32/libgomp.la
 *    /usr/lib32/libgomp.so
 *    /usr/lib32/libgomp.so.1
 *    /usr/lib32/libgomp.so.1.0.0
 *    /usr/lib32/libgomp.spec
 *    /usr/lib32/libmudflap.a
 *    /usr/lib32/libmudflap.la
 *    /usr/lib32/libmudflap.so
 *    /usr/lib32/libmudflap.so.0
 *    /usr/lib32/libmudflap.so.0.0.0
 *    /usr/lib32/libmudflapth.a
 *    /usr/lib32/libmudflapth.la
 *    /usr/lib32/libmudflapth.so
 *    /usr/lib32/libmudflapth.so.0
 *    /usr/lib32/libmudflapth.so.0.0.0
 *    /usr/lib32/libstdc++.a
 *    /usr/lib32/libstdc++.la
 *    /usr/lib32/libstdc++.so
 *    /usr/lib32/libstdc++.so.6
 *    /usr/lib32/libstdc++_pic.a
 *    /usr/lib32/libsupc++.a
 *    /usr/lib32/libsupc++.la
 *    /usr/lib64/libgcc_s.so
 *    /usr/lib64/libgcc_s.so.1
 *    /usr/lib64/libgomp.a
 *    /usr/lib64/libgomp.la
 *    /usr/lib64/libgomp.so
 *    /usr/lib64/libgomp.so.1
 *    /usr/lib64/libgomp.so.1.0.0
 *    /usr/lib64/libgomp.spec
 *    /usr/lib64/libmudflap.a
 *    /usr/lib64/libmudflap.la
 *    /usr/lib64/libmudflap.so
 *    /usr/lib64/libmudflap.so.0
 *    /usr/lib64/libmudflap.so.0.0.0
 *    /usr/lib64/libmudflapth.a
 *    /usr/lib64/libmudflapth.la
 *    /usr/lib64/libmudflapth.so
 *    /usr/lib64/libmudflapth.so.0
 *    /usr/lib64/libmudflapth.so.0.0.0
 *    /usr/lib64/libstdc++.a
 *    /usr/lib64/libstdc++.la
 *    /usr/lib64/libstdc++.so
 *    /usr/lib64/libstdc++.so.6
 *    /usr/lib64/libstdc++_pic.a
 *    /usr/lib64/libsupc++.a
 *    /usr/lib64/libsupc++.la
 *
 * Package 'sys-devel/gcc-4.4.1' NOT merged due to file collisions. If
 * necessary, refer to your elog messages for the whole content of the
 * above message.


Last edited by razer on Sun Oct 11, 2009 10:59 am; edited 1 time in total
Back to top
View user's profile Send private message
Leander256
l33t
l33t


Joined: 05 Jul 2003
Posts: 909
Location: Singapour

PostPosted: Sat Oct 10, 2009 12:26 pm    Post subject: Reply with quote

C'est très étrange ton problème, on dirait que tu n'as pas les slots... Quels sont les USE utilisés pour faire le emerge? C'est juste une intuition mais je me demande si tu n'as pas activé vanilla, entraînant par la la désactivation des patches Gentoo pour avoir plusieurs versions de gcc installées en parallèle. En tout cas il devrait installer dans des répertoires avec numéro de version:
Code:
# equery f gcc | grep libstdc++.a
/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.1/32/libstdc++.a
/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.1/libstdc++.a

En outre je n'ai eu aucun problème avec gcc 4.4.1 depuis son installation fin juillet.
Back to top
View user's profile Send private message
razer
l33t
l33t


Joined: 08 Oct 2004
Posts: 893
Location: Paris - France

PostPosted: Sat Oct 10, 2009 1:40 pm    Post subject: Reply with quote

Il y a en effet un truc bizarre avec les slots et les chemins (cf plus bas) : merci de m'avoir mis la puce à l'oreille

Je fais une réinstall de gcc-4.3, on verra bien

Code:
# equery f gcc | grep libstdc++.a
/usr/lib32/libstdc++.a
/usr/lib64/libstdc++.a

# ls /usr/lib/gcc/x86_64-pc-linux-gnu/4.3.4/
libgcc.a     libgcc_eh.a  libgcov.a

# equery uses gcc
 * Searching for gcc ...
[ Legend : U - flag is set in make.conf       ]
[        : I - package is installed with flag ]
[ Colors : set, unset                         ]
 * Found these USE flags for sys-devel/gcc-4.4.1:
 U I
 - - altivec     : Adds support for optimizations for G4 and G5/ppc970
                   processors
 - - bootstrap   : !!internal use only!! DO NOT SET THIS FLAG YOURSELF!, used
                   during original system bootstrapping [make stage2]
 - - build       : !!internal use only!! DO NOT SET THIS FLAG YOURSELF!, used
                   for creating build images and the first half of
                   bootstrapping [make stage1]
 - - doc         : Adds extra documentation (API, Javadoc, etc)
 - - fixed-point : Enable fixed-point arithmetic support for MIPS targets in
                   gcc (Warning: significantly increases compile time!)
 - - fortran     : Adds support for fortran (formerly f77)
 - - gcj         : Enable building with gcj (The GNU Compiler for the Javatm
                   Programming Language)
 - - graphite    : Add support for the framework for loop optimizations based
                   on a polyhedral intermediate representation
 + + gtk         : Adds support for x11-libs/gtk+ (The GIMP Toolkit)
 - - hardened    : activate default security enhancements for toolchain (gcc,
                   glibc, binutils)
 - - ip28        : Enable building a compiler capable of building a kernel for
                   SGI Indigo2 Impact R10000 (IP28)
 - - ip32r10k    : Enable building a compiler capable of building an
                   experimental kernel for SGI O2 w/ R1x000 CPUs (IP32)
 - - libffi      : Build the portable foreign function interface library
 + + mudflap     : Add support for mudflap, a pointer use checking library
 + + multilib    : On 64bit systems, if you want to be able to compile 32bit
                   and 64bit binaries
 - - multislot   : Allow for SLOTs to include minor version (3.3.4 instead of
                   just 3.3)
 - - n32         : Enable n32 ABI support on mips
 - - n64         : Enable n64 ABI support on mips
 + + nls         : Adds Native Language Support (using gettext - GNU locale
                   utilities)
 - - nocxx       : Disable support for C++ (DON'T USE THIS UNLESS YOU KNOW WHAT
                   YOU'RE DOING)
 + + nptl        : Enable support for Native POSIX Threads Library, the new
                   threading module (requires linux-2.6 or better usually)
 - - objc        : Build support for the Objective C code language
 - - objc++      : Build support for the Objective C++ language
 - - objc-gc     : Build support for the Objective C code language Garbage
                   Collector
 + + openmp      : Build support for the OpenMP (support parallel computing),
                   requires >=sys-devel/gcc-4.2 built with USE="openmp"
 - - test        : Workaround to pull in packages needed to run with
                   FEATURES=test. Portage-2.1.2 handles this internally, so
                   don't set it in make.conf/package.use anymore
 - - vanilla     : Do not add extra patches which change default behaviour; DO
                   NOT USE THIS ON A GLOBAL SCALE as the severity of the
                   meaning changes drastically
Back to top
View user's profile Send private message
razer
l33t
l33t


Joined: 08 Oct 2004
Posts: 893
Location: Paris - France

PostPosted: Sat Oct 10, 2009 3:16 pm    Post subject: Reply with quote

Bon j'ai réessayé de compiler la version 4.3.4, j'ai même essayé sans le flag "openmp", rien n'y fait : les libs s'installent directement dans /usr/lib64, /usr/lib/gcc/x86_64-pc-linux-gnu/4.3.4 ne contient que les include et des broutilles.
J'y comprend rien, merci de m'aider
Back to top
View user's profile Send private message
razer
l33t
l33t


Joined: 08 Oct 2004
Posts: 893
Location: Paris - France

PostPosted: Sun Oct 11, 2009 11:03 am    Post subject: Reply with quote

J'ai résolu mon problème de la manière suivante :

Copie des librairies relatives au package gcc installé de /usr/lib64 et /usr/lib32 vers /usr/lib/gcc/x86.../<version>
Modification équivalente aux copies dans /var/db/pkg/sys-devel/gcc-<version>/CONTENTS
Création d'un paquet binaire de gcc via quickpkg
Installation du paquet binaire
Emerge du système : emerge -e system

Les librairies ont enfin pris place au bon endroit

Je pense que mon problème était relatif à distcc, que j'avais utilisé il y a quques temps et qui était resté activé dans mon make.conf
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French 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