[FreeBSD] lol met GCC 3.1

Pagina: 1
Acties:

  • MadCow*
  • Registratie: Januari 2001
  • Laatst online: 05-08-2025

MadCow*

<= icon space for rent

Topicstarter
ok dit is de situatie:
ik heb vandaag wat zitten knutselen met gcc 3.1 op mijn FreeBSD 4.6 Stable systeem.

Na het herbakken van xchat is me wat vreemds opgevallen toen ik het draaide.

Namelijk dit:

Afbeeldingslocatie: http://members1.chello.nl/~g.mast/x-chat.jpg

(voor die gene die het niet meteen zie, kijk naar de cpu snelheid :))

ik wil er nog achteraan waarom dit zo is, met gcc 2.95 is de snelheid wel goed.
Heeft iemand een idee?
ik wou dit ff laten zien, had ik deze bak maar thuis :9

Veni, Vidi, Et je n'en crois pas mes yeux! (ik kwam, ik zag, en ik geloofde mijn ogen niet!) - J. Caesar (Asterix en de gladiatoren) | Nu vernieuwd met toegevoegde lazyness.


  • Platypussy
  • Registratie: Maart 2001
  • Laatst online: 12-05 14:35
Geef nou maar gewoon toe dat je een bruut snel prototype thuis hebt staan... :P

Verwijderd

Staan er in je CFLAGS optimaliaties voor je processor. Denk aan FP-berekeningen (-mfpmath) en architectuur/cpu (-mcpu/-march).

Ik gok van niet, waardoor er geen optimalisatie verricht is en er dus uitgegaan is van een 386 :)

Verwijderd

Euh i386 is een platform pc. NIet een 386 (als pc zijnde!) hij bedoeld denk ik het aantal Mhz, dat is namelijk wel bruut veel :) 3217 Mhz :)

  • Apache
  • Registratie: Juli 2000
  • Laatst online: 08-05 09:28

Apache

amateur software devver

Op donderdag 11 juli 2002 13:05 schreef Rats het volgende:
Euh i386 is een platform pc. NIet een 386 (als pc zijnde!) hij bedoeld denk ik het aantal Mhz, dat is namelijk wel bruut veel :) 3217 Mhz :)
Volgens mij weet Nelske dat wel hoor :+

MAar k'denk dat hij bedoeld dat gcc 3.1 iets berekend zodat de cpu gezien word als een 386 @ die snelheid :?

If it ain't broken it doesn't have enough features


Verwijderd

Ik vraag me af hoe die aan die 386 komt. Want in het screenie zie ik alleen i386. kan natuurlijk zijn dat ie er overheen heeft gelezen :).

  • MadCow*
  • Registratie: Januari 2001
  • Laatst online: 05-08-2025

MadCow*

<= icon space for rent

Topicstarter
heeft idd met de optimaliaties te maken.
maar afgezien van dit vreemde "geval" werkt het prima :)

dus wat moeten/kunnen we er verder aan doen dan :?

Veni, Vidi, Et je n'en crois pas mes yeux! (ik kwam, ik zag, en ik geloofde mijn ogen niet!) - J. Caesar (Asterix en de gladiatoren) | Nu vernieuwd met toegevoegde lazyness.


Verwijderd

De vraag lijkt me meer, waarom zou je dat goed willen hebben staan, waneer gcc verder prima werkt? Dan kan je toch net zogoed gebruik van gcc maken met de fout erin?

  • MadCow*
  • Registratie: Januari 2001
  • Laatst online: 05-08-2025

MadCow*

<= icon space for rent

Topicstarter
Op donderdag 11 juli 2002 18:04 schreef Rats het volgende:
De vraag lijkt me meer, waarom zou je dat goed willen hebben staan, waneer gcc verder prima werkt? Dan kan je toch net zogoed gebruik van gcc maken met de fout erin?
goed punt, ik begon het al als een extra "feature" te beschouwen >:)

Veni, Vidi, Et je n'en crois pas mes yeux! (ik kwam, ik zag, en ik geloofde mijn ogen niet!) - J. Caesar (Asterix en de gladiatoren) | Nu vernieuwd met toegevoegde lazyness.


Verwijderd

Op donderdag 11 juli 2002 13:05 schreef Rats het volgende:
Euh i386 is een platform pc. NIet een 386 (als pc zijnde!) hij bedoeld denk ik het aantal Mhz, dat is namelijk wel bruut veel :) 3217 Mhz :)
En wat denk je dat GCC van mijn Athlon-XP vindt :?

Precies i686 ;)

Ik weet ik echt wel wat i386 is hoor :o

Verwijderd

Even een vraagje als ik GCC 3.1 via de FreeBSD ports op bouw komt ie als gcc31 in /usr/local/bin .. de 'gewone' 2.95 staat in /usr/bin als gcc ... hoe kan ik deze 2 compilers naast mekaar gebruiken? Als ik dus gewoon make doe dan gebruikt ie de 2.95 ipv 3.1 . In de docs en op de gnu website kan ik hier niets over vinden... het zal vast iets simpels zijn maar goed je moet het maar weten :)

Misschien nog iets... na de build heb ik een gcc in /usr/bin en een gcc31 in /usr/local/bin

  • mpol
  • Registratie: September 2002
  • Laatst online: 19-01 18:45

mpol

root@localhost

Dan zou je de Makefile van het desbetreffende programma kunnen aanpassen om gcc31 te gebruiken ipv gcc.Of een export doen van CC=gcc31
Ik zou trouwens gcc 3.2 gebruiken ipv 3.1. Er is geen binary compatibility tussen 3.1 en 3.2, terwijl dit vanaf 3.2 wel zo zou moeten zijn. Ik neem aan dat deze in de huidige portstree zit, dus een cvsup daarvan zou hem binnen moeten halen.

https://timelord.nl


Verwijderd

Ga ik meteen even proberen ... dus als ik in mijn .bashrc file toevoeg export CC=gcc31 moet het goed gaan? - Ja dus :)

Hmmm dat gaat dus volgens mij niet helemaal goed, gcc31 wordt wel gebruikt _/-\o_ maar als ik voor de aardigheid samba probeer te compileren en dan krijg ik het volgende :( :
code:
1
2
3
4
5
6
7
8
checking for gcc... gcc31
checking whether the C compiler (gcc31 -O -O -pipe -march=pentiumpro -L/usr/local/lib) works... yes
checking whether the C compiler (gcc31 -O -O -pipe -march=pentiumpro -L/usr/local/lib) is a cross-compiler... no
....
Compiling smbd/lanman.c
cc1: warning: changing search order for system directory &quot;/usr/local/include&quot;
cc1: warning:   as it has already been specified as a non-system directory
....

Wat gaat hier verkeerd?

Wat betreft 3.2 die heb ik al 3 geprobeert maar telkens maakt ie een of andere vage fout. Probeer 3.2 nu opnieuw te compilen na cvsup ... misschien hebben ze de bug gevonden }) .

  • MadCow*
  • Registratie: Januari 2001
  • Laatst online: 05-08-2025

MadCow*

<= icon space for rent

Topicstarter
ik dacht dat je USE_GCC=3.1 moets gebruiken
dus b.v. "make USE_GCC=3.1 install clean"
ik kan het mis hebben, is al weer een tijdje geleden

Veni, Vidi, Et je n'en crois pas mes yeux! (ik kwam, ik zag, en ik geloofde mijn ogen niet!) - J. Caesar (Asterix en de gladiatoren) | Nu vernieuwd met toegevoegde lazyness.


  • AVL
  • Registratie: Januari 2000
  • Laatst online: 25-09-2022

AVL

OHMSS

willblack: Je moet het volgende in je /etc/make.conf zetten:
code:
1
2
CC=gcc31
CXX=g++31

Dat wat MadCow zei kan ook, maar dat werkt maa bij een paar ports - dit bij allemaal.

Happy compiling!

PS: Die warnings (over /usr/local/include) zijn normaal.

"I'd rather have a bottle in front of me than a frontal lobotomy."


Verwijderd

Thanks AVL dat lijkt te werken _/-\o_ ... echter een 'make buildkernel KERNCONF=KERNELNAME' gaat stuk met :'( :
code:
1
2
3
4
5
6
gcc31 -O -pipe -march=pentiumpro -nostdinc -I/usr/include -I. -I/usr/src/sys/dev/aic7xxx/aicasm    -D__FBSDID=__RCSID -c /usr/src/sys/dev/aic7xxx/aicasm/aicasm.c
gcc31: not found
*** Error code 127

Stop in /usr/obj/usr/src/sys/MARS.
*** Error code 1


Eenzelfde error krijg je als je een 'make buildworld' issued :( .

Typisch overigens is wel dat als je de kernel via de oude manier bouwt: config KERNELNAME, make depend, make, make install; dan gaat het wel goed :? .
Edit: Iets te vroeg gejuicht, bij 'Linking Kernel' klapt ie er ook uit. Toch maar weer 2.95 geloof ik :X

En wat betreft GCC3.2 port die is blijkbaar brak :(
Pagina: 1