Deutsches Simutransforum

Normale Version: Compile-Probleme
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Ich habe versucht, die Sourcen zu 99-12 auf meiner Linux-Box zu compilieren,
bekomme aber Fehlermeldungen wie:
Code:
cc: couldn't run 'i486-linux-gnu-gcc-3.3': No such file or directory
Gibt es einen besonderen Grund für die Verwendung des alten gcc 3.3 ?
Installiert bei mir ist gcc version 4.1.2

Wenn man dann in Makefile den Abschnitt
Code:
ifeq ($(OSTYPE),linux)
  STD_LIBS ?= -lz
  CFLAGS = -V 3.3
  CXXFLAGS = -V 3.3
endif
ersetzt durch
Code:
ifeq ($(OSTYPE),linux)
  STD_LIBS ?= -lz
  CFLAGS = -V 4.1
  CXXFLAGS = -V 4.1
endif
dann läuft zwar der Compiler, stoppt aber gleich wieder beim ersten Programm:
Code:
===> CXX bauer/fabrikbauer.cc
bauer/../simfab.h:291: error: extra qualification 'fabrik_t::' on member 'get_base_production'
bauer/fabrikbauer.cc: In static member function 'static int fabrikbauer_t::baue_hierarchie(karte_t*, koord3d*, const fabrik_besch_t*, int, koord3d*, spieler_t*)':
bauer/fabrikbauer.cc:602: warning: comparison between signed and unsigned integer expressions
make: *** [bauer/fabrikbauer.o] Error 1

Die anderen Programme liefern dann noch weitere solcher Fehler, z.B.
Code:
===> CXX besch/reader/pedestrian_reader.cc
besch/reader/../../simverkehr.h:128: error: extra qualification 'stadtauto_t::' on member 'info'
make: [besch/reader/pedestrian_reader.o] Error 1
Ausserdem noch diverse Warnungen wie
Code:
bauer/../dings/crossing.h:103: warning: unused parameter 'delta_t'
bauer/wegbauer.cc:603: warning: unused variable 'ribi'

besch/sound_besch.cc: In static member function 'static sint16 sound_besch_t::gib_sound_id(const char*)':
besch/sound_besch.cc:102: warning: comparison is always false due to limited range of data type

dataobj/fahrplan.cc:248: warning: comparison between signed and unsigned integer expressions

dataobj/loadsave.cc:246: warning: format '%ld' expects type 'long int', but argument 3 has type 'int'

dings/crossing.cc:283: warning: missing braces around initializer for 'kreuzung_besch_t* [8]'

gui/citylist_stats_t.cc:52: warning: enumeration value 'SORT_MODES' not handled in switch

gui/karte.cc:776: warning: passing 'double' for argument 1 to 'koord::koord(short int, short int)'

gui/money_frame.h: In constructor 'money_frame_t::money_frame_t(spieler_t*)':
gui/money_frame.h:47: warning: 'money_frame_t::omoney' will be initialized after
gui/money_frame.h:46: warning:   'gui_label_t money_frame_t::pmoney'
gui/money_frame.cc:88: warning:   when initialized here

In file included from simdisplay.c:22:
simgraph.h:100: warning: 'struct bild_t' declared inside parameter list
simgraph.h:100: warning: its scope is only this definition or declaration, which is probably not what you want
Was nun - zurück zum alten gcc?

Wurzelgnom

Fragen zur Programmierung sollten besser im Internationalen Forum gestellt werden.

Dort wurde auch schon einiges dazu geschrieben.

Für die Programmierung sollte es nur eine Anlaufstelle geben, da sonst schnell doppelte Arbeit gemacht wird oder Kollisionen entstehen.

http://forum.simutrans.com/index.php/board,155.0.html
Zitat:Original von FrankP
Fragen zur Programmierung sollten besser im Internationalen Forum gestellt werden.
Ok - reposted at http://forum.simutrans.com/index.php/top...l#msg54089