Hi,
I am using 11.0. The gcc version i have is 4.3.1 which comes with the distribution. Here Index of /repositories/devel:/gcc/openSUSE_11.0/i586 i find gcc-4.4.1 which i wish to install. Are the pkgs in /repositories/devel stable & safe for installation ?
Err… did you take a look at the name of the repostory name? Noticed “devel”?
Nope, they are NOT stable. And they might not be safe either. Try them - but as they are in development stage, don´t expect too much support if anything crashes or doesn´t work.
Devel as in “packages connected to software development”.
BS.
The question however is, why one wants to install another gcc than the one the running OS was compiled with.
Sometimes binaries compiled with another compiler than the ones used for the OS don’t run properly (maybe they do, may they don’t).
Hi,
I did think that gcc 4.4.1 in /repositories/devel would be stable since some pkgs come as pkg.rpm and pkg-devel.rpm and sometimes one does need the devel ones. Just wanted to cross-check. The ones in factory are what i think i would not use.
I did not know that it might be unsafe to use a gcc version that the current OS is not compiled with. Then why do they provide version 4.4.1 that replaces the previous version? I mean that folks could compile gcc 4.4.1 such that it gets installed elsewhere and the interested user could invoke the necessary compiler as and when required. But i suppose that they can’t satisfy everyone’s requirement:.
Actually i have no intention of upgrading my OS (for about a year even after the support ends !!). So i thought that it is wiser to have the latest pkgs instead.
Thanks.
Well, the real question is, why did you think you need to upgrade gcc?
A) It does not if done correctly.
B) For people who really need gcc 4.4.1
There are many newer packages, why not provide them?
After all, they are in non-official repositories and for users, who know what they are doing, they are a big benefit.
That is actually the case, so I don’t see your point.
If you really need gcc 4.4.1 for a good reason, then use it, if you don’t need it, then why do you want to install it?
Maybe, but in this case it looks like you don’t even know why you wanted to upgrade.
No, it is not wise to not upgrade the OS_after_ the support ends, keeping it until the “End of Life” and then upgrading however is wise, if you don’t need newer components.
But again, same goes for core components like kernel/glibc/compiler/etc.
Why upgrade them, if the the available, officially supported versions already work?
A blunt, little “word of wisdom” says:
“If it’s not broken, don’t fix it.”
Hi Akoellh,
It does not if done correctly. That is actually the case, so I don’t see your point.
I mistakenly thought that once a pkg is compiled is will always go to the designated location. Maybe if i download the src rpms i could change the install dirs ?
Maybe, but in this case it looks like you don’t even know why you wanted to upgrade.
You are quite right about this. The only reason i can provide is what i said earlier:
Actually i have no intention of upgrading my OS (for about a year even after the support ends !!). So i thought that it is wiser to have the latest pkgs instead.
By this i actually meant that i would not go for a newer OS like 11.3 (since 11.0 would stop being supported) for about one more year since i am quite happy with what i have at present and moreover it would take me more that a couple of weeks to set up my new system (limited bandwidth for downloading the different apps and i am kinda slow:P)
But i think that i get your point about not needing to upgrade my gcc version.
Thanks.
It does.
Why?
I know I am playing mean here (for some reason, I might add).
There is no need in changing src.rpms, the package “gcc44” will not overwrite the package “gcc43”, it is possible to install two (or even more) versions of gcc in parallel and choose one of them according to your needs, if you really know, what you are doing and have a good reason to do so.
Just to give an example here:
rpm -ql gcc43
/usr/bin/gcc-4.3
/usr/bin/gcov-4.3
/usr/lib64/gcc
/usr/lib64/gcc/x86_64-suse-linux
/usr/lib64/gcc/x86_64-suse-linux/4.3
/usr/lib64/gcc/x86_64-suse-linux/4.3/32
/usr/lib64/gcc/x86_64-suse-linux/4.3/collect2
/usr/lib64/gcc/x86_64-suse-linux/4.3/crtbegin.o
/usr/lib64/gcc/x86_64-suse-linux/4.3/crtbeginS.o
/usr/lib64/gcc/x86_64-suse-linux/4.3/crtbeginT.o
/usr/lib64/gcc/x86_64-suse-linux/4.3/crtend.o
/usr/lib64/gcc/x86_64-suse-linux/4.3/crtendS.o
/usr/lib64/gcc/x86_64-suse-linux/4.3/crtfastmath.o
/usr/lib64/gcc/x86_64-suse-linux/4.3/crtprec32.o
/usr/lib64/gcc/x86_64-suse-linux/4.3/crtprec64.o
/usr/lib64/gcc/x86_64-suse-linux/4.3/crtprec80.o
/usr/lib64/gcc/x86_64-suse-linux/4.3/include
/usr/lib64/gcc/x86_64-suse-linux/4.3/include-fixed
/usr/lib64/gcc/x86_64-suse-linux/4.3/include-fixed/README
/usr/lib64/gcc/x86_64-suse-linux/4.3/include-fixed/limits.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include-fixed/syslimits.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/ammintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/bmmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/emmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/float.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/iso646.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/mm3dnow.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/mm_malloc.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/mmintrin-common.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/mmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/nmmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/omp.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/pmmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/smmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/stdarg.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/stdbool.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/stddef.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/stdfix.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/tmmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/uchar.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/unwind.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/varargs.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/wmmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/include/xmmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.3/libgcc.a
/usr/lib64/gcc/x86_64-suse-linux/4.3/libgcc_eh.a
/usr/lib64/gcc/x86_64-suse-linux/4.3/libgcc_s.so
/usr/lib64/gcc/x86_64-suse-linux/4.3/libgcov.a
/usr/lib64/gcc/x86_64-suse-linux/4.3/libgomp.a
/usr/lib64/gcc/x86_64-suse-linux/4.3/libgomp.so
/usr/lib64/gcc/x86_64-suse-linux/4.3/libgomp.spec
/usr/share/man/man1/gcc-4.3.1.gz
/usr/share/man/man1/gcov-4.3.1.gz
and
rpm -qlp /daten/osc/osbuild-packagecache/openSUSE\:Factory/standard/x86_64/gcc44-4.4.1_20090817-1.19.x86_64.rpm
/usr/bin/gcc-4.4
/usr/bin/gcov-4.4
/usr/lib64/gcc
/usr/lib64/gcc/x86_64-suse-linux
/usr/lib64/gcc/x86_64-suse-linux/4.4
/usr/lib64/gcc/x86_64-suse-linux/4.4/32
/usr/lib64/gcc/x86_64-suse-linux/4.4/collect2
/usr/lib64/gcc/x86_64-suse-linux/4.4/crtbegin.o
/usr/lib64/gcc/x86_64-suse-linux/4.4/crtbeginS.o
/usr/lib64/gcc/x86_64-suse-linux/4.4/crtbeginT.o
/usr/lib64/gcc/x86_64-suse-linux/4.4/crtend.o
/usr/lib64/gcc/x86_64-suse-linux/4.4/crtendS.o
/usr/lib64/gcc/x86_64-suse-linux/4.4/crtfastmath.o
/usr/lib64/gcc/x86_64-suse-linux/4.4/crtprec32.o
/usr/lib64/gcc/x86_64-suse-linux/4.4/crtprec64.o
/usr/lib64/gcc/x86_64-suse-linux/4.4/crtprec80.o
/usr/lib64/gcc/x86_64-suse-linux/4.4/include
/usr/lib64/gcc/x86_64-suse-linux/4.4/include-fixed
/usr/lib64/gcc/x86_64-suse-linux/4.4/include-fixed/README
/usr/lib64/gcc/x86_64-suse-linux/4.4/include-fixed/limits.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include-fixed/syslimits.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/ammintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/avxintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/bmmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/cpuid.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/cross-stdarg.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/emmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/float.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/immintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/iso646.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/mm3dnow.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/mm_malloc.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/mmintrin-common.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/mmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/nmmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/omp.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/pmmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/smmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/stdarg.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/stdbool.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/stddef.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/stdfix.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/tmmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/uchar.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/unwind.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/varargs.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/wmmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/x86intrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/include/xmmintrin.h
/usr/lib64/gcc/x86_64-suse-linux/4.4/libgcc.a
/usr/lib64/gcc/x86_64-suse-linux/4.4/libgcc_eh.a
/usr/lib64/gcc/x86_64-suse-linux/4.4/libgcc_s.so
/usr/lib64/gcc/x86_64-suse-linux/4.4/libgcov.a
/usr/lib64/gcc/x86_64-suse-linux/4.4/libgomp.a
/usr/lib64/gcc/x86_64-suse-linux/4.4/libgomp.so
/usr/lib64/gcc/x86_64-suse-linux/4.4/libgomp.spec
/usr/share/man/man1/gcc-4.4.1.gz
/usr/share/man/man1/gcov-4.4.1.gz
So no problem at all.
Hi Akoellh,
You can see the 3rd line: /usr/lib64/gcc. I suppose this gcc is a symlink to the gcc executable. This is one problem that meets my eye. Not a big problem though…
No, it’s not, it’s a directory.
No, it’s not, it’s a directory.
My bad, i meant there is a symlink gcc in /usr/bin. But anyway, not a problem. Thanks for the replies !
Cheers !