[Debian] GCC probleempje

Pagina: 1
Acties:

  • -W0kk3L-
  • Registratie: Juni 2002
  • Laatst online: 20-12-2025
Howdi,

Ik heb een vraagje. Ik heb een aantal proggies die gecompiled moeten worden. Echter ze vereisen een GCC versie gelijk of hoger dan 3.2. Echter op mijn debian staat alleen 2.95.4 die ik met apt-get geinstalled heb.

Volgens een aantal andere topics is het mogelijk om een nieuwere versie van GCC ernaast (of erover) te installen, alleen lukt me dit niet met apt-get. Hierin is alleen de oude versie te vinden (waarschijnlijk om dat dit de enige stable is?).

Kan iemand mij vertellen hoe ik een nieuwe versie kan installen? Ik heb wel wat ervaring met dingen installen, maar GCC is me nog net even iets te hoog gegrepen.

  • sebas
  • Registratie: April 2000
  • Laatst online: 16-12-2025
Ik heb meerdere gcc's naast elkaar geinstalleerd: gcc-3.2, gcc-2.95 en gcc-3.3. De default staat in /usr/bin/gcc gelinked (meestal is dat gcc-3.3). Als ik systeemwijd een andere wil gebruiken voldoet het om die link even aan te passen. Als ik alleen eventjes een andere nodig heb kan ik die direct aanroepen, of door middel van de CC var in mijn environment veranderen. Deze gcc's zitten trouwens allemaal in sid, ik weet niet hoeveel dependencyproblemen je tegen gaat komen als je die op woody probeert te installeren, maar je zult weten waarom je voor woody hebt gekozen. >:)

Everyone complains of his memory, no one of his judgement.


  • moto-moi
  • Registratie: Juli 2001
  • Laatst online: 09-06-2011

moto-moi

Ja, ik haat jou ook :w

apt-get install gcc-3.3 lijkt me een leuk begin ?

Dat is, als je Unstable of Testing draait, ik dacht niet dat 3.3 al in stable zit, en aangezien http://packages.debian.org nog steeds down is, kan ik dat ook wat beroerd controlleren ;)

God, root, what is difference? | Talga Vassternich | IBM zuigt


  • Aike
  • Registratie: Juli 2000
  • Niet online
2.95.4 is de versie die in testing / unstable gebruikt wordt. Hoezo zou je nog nieuwer willen ?

--edit dat was dus niet de oplossing --

offtopic:
je avatar doet het niet

[ Voor 26% gewijzigd door Aike op 28-12-2003 14:07 ]

Mijn blog over het deployen van Ruby on Rails: RunRails.com


  • ajvdvegt
  • Registratie: Maart 2000
  • Laatst online: 04-12-2025
Je kan niet zomaar van alles met de 3.2 compiler gaan compileren, omdat die incompatible is met de 2.95 serie. Programma's die je met 3.2 compileert kunnen dus bv. niet linken met bibliotheken uit Debian Stable, want die zijn met 2.95 gecompileerd (of was dit op magische wijze opgelost door de Debian packagers :?)
Porgramma's die niet dynamisch bibliotheken laden zijn geen probleem geloof ik.

I don't kill flies, but I like to mess with their minds. I hold them above globes. They freak out and yell "Whooa, I'm *way* too high." -- Bruce Baum


  • -W0kk3L-
  • Registratie: Juni 2002
  • Laatst online: 20-12-2025
moto-moi schreef op 28 december 2003 @ 14:06:
apt-get install gcc-3.3 lijkt me een leuk begin ?

Dat is, als je Unstable of Testing draait, ik dacht niet dat 3.3 al in stable zit, en aangezien http://packages.debian.org nog steeds down is, kan ik dat ook wat beroerd controlleren ;)
Deze had ik al geprobeerd, maar ik draai de stable, dus ik kom niet verder dan 2.95.4 met apt-get. Wellicht iets in sources.list wijzigen om het wel te kunnen? Daar staat nu alleen het volgende in:
deb ftp://ftp.debian.nl/debian/ stable main
deb-src ftp://ftp.debian.nl/debian/ stable main
deb http://non-us.debian.org/debian-non-US stable/non-US main
deb-src http://non-us.debian.org/debian-non-US stable/non-US main

deb http://security.debian.org/ stable/updates main
Ik heb overigens niet bewust voor de Woody versie van Debian gekozen hoor. Als dit veel problemen gaat opleveren (meer dan bij een Testing versie), dan knal ik em gewoon om. Er staat momenteel nog zo weinig op, dat dat geen probleem is.

[ Voor 13% gewijzigd door -W0kk3L- op 28-12-2003 14:44 ]


  • Buffy
  • Registratie: April 2002
  • Laatst online: 26-12-2024

Buffy

Fire bad, Tree pretty

Inprincipe zou je bij de eerste vier regels stable kunnen vervangen door unstable.
Dit heeft wel tot gevolg dat je bij de eerst volgende 'apt-get (dist-)upgrade' vrijwel alle pakketten zult vervangen met de unstable versie.

Als je redenen hebt om dit niet te willen (bv security) dan zou je eens moeten kijken naar pinning. Hiermee kan je aangeven dat je de voorkeur hebt aan pakketten uit de stable versie tenzij je aangeeft dat je apt-get unstable moet gebruiken.

Houdt er wel rekening mee dat gcc 3.2 en hoger waarschijnlijk dependen op de laatste versie van libc wat mogelijk problemen kan opleveren met programma's die gecompileerd zijn met een oude libc (hoeft niet maar soms maken programma's gebruik van bugs in libc die in een nieuwe versie gefixed zijn, ed).

[ Voor 3% gewijzigd door Buffy op 28-12-2003 14:54 ]

That which doesn't kill us, makes us stranger - Trevor (AEon FLux)
When a finger points at the moon, the imbecile looks at the finger (Chinese Proverb)


  • -W0kk3L-
  • Registratie: Juni 2002
  • Laatst online: 20-12-2025
Ok, ik ben even aan het experimenteren geweest (wie weet heb ik er wel meer mee verknald dan opgelost :)). Ik heb ffies apt-get install gcc-3.3 gedaan, nadat ik de source.list aangepast had. Opzich allemaal prima gegaan. Ik heb de symlinks van 2.95 omgezet naar 3.3. gcc --version geeft nu netjes 3.3, alleen als ik ga 'make'en krijg ik nu de volgende fout:

/bin/sh: c++: command not found

Echter in /usr/bin staat volgens mij gewoon c++.... mis ik iets?

Edit:
Ik kwam net deze topic tegen: C++/make install error

Het zal toch niet he? :)

[ Voor 17% gewijzigd door -W0kk3L- op 28-12-2003 15:10 ]


  • sebas
  • Registratie: April 2000
  • Laatst online: 16-12-2025
Hier werkt c++ -v gewoon, en geeft netjes:
Reading specs from /usr/lib/gcc-lib/i486-linux/3.3.3/specs
Configured with: ../src/configure -v --enable-languages=c,c++,java,f77,pascal,objc,ada,treelang --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-gxx-include-dir=/usr/include/c++/3.3 --enable-shared --with-system-zlib --enable-nls --without-included-gettext --enable-__cxa_atexit --enable-clocale=gnu --enable-debug --enable-java-gc=boehm --enable-java-awt=xlib --enable-objc-gc i486-linux
Thread model: posix
gcc version 3.3.3 20031206 (prerelease) (Debian)
Hier vind je mijn sources.list en apt.conf, moch je je systeem compleet upgraden naar sid. (apt-get update && apt-get dist-upgrade).

Check ook even of je de volgende packages hebt: libstdc++5, gcc-3.3, gcc-3.3-base, libgcc1.

Eventueel moet je - zoals ajvdvegt al zei - nog een zooi libs vervangen, en omdat 2.95 en 3.3 niet binary compatible zijn kan het dan een goed idee zijn om heel je systeem te upgraden.

Everyone complains of his memory, no one of his judgement.


  • Buffy
  • Registratie: April 2002
  • Laatst online: 26-12-2024

Buffy

Fire bad, Tree pretty

Vergeet ook niet g++-3.3 te installeren :)

Overigens /usr/bin/c++ is een link naar /etc/alternatives/c++
die weer naar een versie van g++ linkt (die waarschijnlijk weer een link is naar g++-3.3).
Welke versie dat is kun je controleren bv 'update-alternatives --display c++'
Als dit niet de goede versie is kun je dit aanpassen mbv update-alternatives.

[ Voor 80% gewijzigd door Buffy op 28-12-2003 15:21 ]

That which doesn't kill us, makes us stranger - Trevor (AEon FLux)
When a finger points at the moon, the imbecile looks at the finger (Chinese Proverb)


  • sebas
  • Registratie: April 2000
  • Laatst online: 16-12-2025
Dawns_sister schreef op 28 december 2003 @ 15:15:
Vergeet ook niet g++-3.3 te installeren :)
Is onderdeel van gcc, gcc == GNU Compiler Collection.

Everyone complains of his memory, no one of his judgement.


  • -W0kk3L-
  • Registratie: Juni 2002
  • Laatst online: 20-12-2025
sebas schreef op 28 december 2003 @ 15:21:
[...]

Is onderdeel van gcc, gcc == GNU Compiler Collection.
Dat dacht ik ook, maar toch heeft hij em niet geinstalled. ik ben nu apt-get install g++-3.3 aan het draaien.

En nu doet tie et weer.... pfew :)

[ Voor 7% gewijzigd door -W0kk3L- op 28-12-2003 15:24 ]


  • Buffy
  • Registratie: April 2002
  • Laatst online: 26-12-2024

Buffy

Fire bad, Tree pretty

sebas schreef op 28 december 2003 @ 15:21:
[...]

Is onderdeel van gcc, gcc == GNU Compiler Collection.
Bij mijn debian installatie (sid) zijn het verschillende pakketten:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$dpkg -l 'g*' | grep -E '^ii'
ii  gcc            3.3.2-1        The GNU C compiler
ii  gcc-2.95       2.95.4-19      The GNU C compiler
ii  gcc-3.0-base   3.0.4-16       The GNU Compiler Collection (base package)
ii  gcc-3.2        3.2.3-8        The GNU C compiler
ii  gcc-3.2-base   3.2.3-8        The GNU Compiler Collection (base package)
ii  gcc-3.2-doc    3.2.3-8        Documentation for the GNU compilers (gcc, go
ii  gcc-3.3        3.3.3-0pre0    The GNU C compiler
ii  gcc-3.3-base   3.3.3-0pre0    The GNU Compiler Collection (base package)
ii  gccchecker     0.9.9.1.200112 Memory access debugger for C language develo
ii  g++            3.3.2-1        The GNU C++ compiler
ii  g++-2.95       2.95.4-19      The GNU C++ compiler
ii  g++-3.2        3.2.3-8        The GNU C++ compiler
ii  g++-3.3        3.3.3-0pre0    The GNU C++ compiler

That which doesn't kill us, makes us stranger - Trevor (AEon FLux)
When a finger points at the moon, the imbecile looks at the finger (Chinese Proverb)


  • sebas
  • Registratie: April 2000
  • Laatst online: 16-12-2025
Dawns_sister schreef op 28 december 2003 @ 15:25:
[...]


Bij mijn debian installatie (sid) zijn het verschillende pakketten:
[...]
Inderdaad, net even gecheckt.

Everyone complains of his memory, no one of his judgement.

Pagina: 1