News:

Simutrans.com Portal
Our Simutrans site. You can find everything about Simutrans from here.

How to compile a no GUI server for Mac OSX

Started by missingpiece, December 11, 2011, 08:36:57 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

missingpiece

Dear forum,

I have used the search to gather as much information as possible on my question, but did not really end up with much that I could use; if at all, people are trying to compile a full game on Mac. Now, I want to run a simutrans server on my Mac at home to play with my family.

To get my feet wet, I installed the published simutrans Mac OSX binary and necessary dependencies on my machine. Obviously, that was very easy.

So far, I found a guide to compile and integrate a simutrans CLI server on Linux-like systems. That I can certainly follow to some point, but I was wondering if anyone had better information. I know something about using the OSX command line but may just easy get lost, too.

Who can help me compiling a CLI server on Mac OSX 10.6?

prissi

Just using the posix backend in the config file together with COLOUR_DEPTH = 0 should be enough. Or just use the normal graphic program to start the server. Any normal executable can server as well; it just needs to be started as "simutrans -server " on the CLI.

missingpiece

Compiling worked like a charm....so I thought. Only a few warnings that do not indicate anything serious to me.

See the compile output here of version 111 ( revision 4911 from trunk ):
hendriksmac:repo hendrik$ make
===> CXX clipboard_internal.cc
===> CXX bauer/brueckenbauer.cc
===> CXX bauer/fabrikbauer.cc
===> CXX bauer/hausbauer.cc
===> CXX bauer/tunnelbauer.cc
===> CXX bauer/vehikelbauer.cc
===> CXX bauer/warenbauer.cc
===> CXX bauer/wegbauer.cc
===> CXX besch/bild_besch.cc
===> CXX besch/bruecke_besch.cc
===> CXX besch/fabrik_besch.cc
===> CXX besch/grund_besch.cc
===> CXX besch/haus_besch.cc
===> CXX besch/reader/bridge_reader.cc
===> CXX besch/reader/building_reader.cc
===> CXX besch/reader/citycar_reader.cc
===> CXX besch/reader/crossing_reader.cc
===> CXX besch/reader/factory_reader.cc
===> CXX besch/reader/good_reader.cc
===> CXX besch/reader/ground_reader.cc
===> CXX besch/reader/groundobj_reader.cc
===> CXX besch/reader/image_reader.cc
===> CXX besch/reader/imagelist2d_reader.cc
===> CXX besch/reader/imagelist_reader.cc
===> CXX besch/reader/obj_reader.cc
===> CXX besch/reader/pedestrian_reader.cc
===> CXX besch/reader/roadsign_reader.cc
===> CXX besch/reader/root_reader.cc
===> CXX besch/reader/sim_reader.cc
===> CXX besch/reader/skin_reader.cc
===> CXX besch/reader/sound_reader.cc
===> CXX besch/reader/text_reader.cc
===> CXX besch/reader/tree_reader.cc
===> CXX besch/reader/tunnel_reader.cc
===> CXX besch/reader/vehicle_reader.cc
===> CXX besch/reader/way_obj_reader.cc
===> CXX besch/reader/way_reader.cc
===> CXX besch/reader/xref_reader.cc
===> CXX besch/sound_besch.cc
===> CXX besch/tunnel_besch.cc
===> CXX besch/vehikel_besch.cc
===> CXX besch/ware_besch.cc
===> CXX boden/boden.cc
===> CXX boden/brueckenboden.cc
===> CXX boden/fundament.cc
===> CXX boden/grund.cc
===> CXX boden/monorailboden.cc
===> CXX boden/tunnelboden.cc
===> CXX boden/wasser.cc
===> CXX boden/wege/kanal.cc
===> CXX boden/wege/maglev.cc
===> CXX boden/wege/monorail.cc
===> CXX boden/wege/narrowgauge.cc
===> CXX boden/wege/runway.cc
===> CXX boden/wege/schiene.cc
===> CXX boden/wege/strasse.cc
===> CXX boden/wege/weg.cc
===> CXX dataobj/crossing_logic.cc
===> CXX dataobj/dingliste.cc
===> CXX dataobj/einstellungen.cc
===> CXX dataobj/fahrplan.cc
===> CXX dataobj/freelist.cc
===> CXX dataobj/gameinfo.cc
===> CXX dataobj/koord.cc
===> CXX dataobj/koord3d.cc
===> CXX dataobj/loadsave.cc
===> CXX dataobj/marker.cc
===> CXX dataobj/network.cc
dataobj/network.cc: In function 'SOCKET network_open_address(const char*, long int, const char*&)':
dataobj/network.cc:254: warning: comparison between signed and unsigned integer expressions
===> CXX dataobj/network_address.cc
===> CXX dataobj/network_cmd.cc
===> CXX dataobj/network_cmd_ingame.cc
===> CXX dataobj/network_cmp_pakset.cc
===> CXX dataobj/network_file_transfer.cc
===> CXX dataobj/network_packet.cc
===> CXX dataobj/network_socket_list.cc
===> CXX dataobj/pakset_info.cc
===> CXX dataobj/powernet.cc
===> CXX dataobj/ribi.cc
===> CXX dataobj/route.cc
===> CXX dataobj/scenario.cc
===> CXX dataobj/tabfile.cc
===> CXX dataobj/translator.cc
===> CXX dataobj/umgebung.cc
===> CXX dataobj/warenziel.cc
===> CXX dings/baum.cc
===> CXX dings/bruecke.cc
===> CXX dings/crossing.cc
===> CXX dings/field.cc
===> CXX dings/gebaeude.cc
===> CXX dings/groundobj.cc
===> CXX dings/label.cc
===> CXX dings/leitung2.cc
===> CXX dings/pillar.cc
===> CXX dings/roadsign.cc
===> CXX dings/signal.cc
===> CXX dings/tunnel.cc
===> CXX dings/wayobj.cc
===> CXX dings/wolke.cc
===> CXX dings/zeiger.cc
===> CXX font.cc
===> CXX freight_list_sorter.cc
===> CXX gui/banner.cc
===> CXX gui/baum_edit.cc
===> CXX gui/citybuilding_edit.cc
===> CXX gui/citylist_frame_t.cc
===> CXX gui/citylist_stats_t.cc
===> CXX gui/climates.cc
===> CXX gui/colors.cc
===> CXX gui/components/gui_button.cc
===> CXX gui/components/gui_chart.cc
===> CXX gui/components/gui_combobox.cc
===> CXX gui/components/gui_fixedwidth_textarea.cc
===> CXX gui/components/gui_flowtext.cc
===> CXX gui/components/gui_image_list.cc
===> CXX gui/components/gui_label.cc
===> CXX gui/components/gui_numberinput.cc
===> CXX gui/components/gui_scrollbar.cc
===> CXX gui/components/gui_scrolled_list.cc
===> CXX gui/components/gui_scrollpane.cc
===> CXX gui/components/gui_speedbar.cc
===> CXX gui/components/gui_tab_panel.cc
===> CXX gui/components/gui_textarea.cc
===> CXX gui/components/gui_textinput.cc
===> CXX gui/components/gui_world_view_t.cc
===> CXX gui/convoi_detail_t.cc
===> CXX gui/convoi_filter_frame.cc
===> CXX gui/convoi_frame.cc
===> CXX gui/convoi_info_t.cc
===> CXX gui/curiosity_edit.cc
===> CXX gui/curiositylist_frame_t.cc
===> CXX gui/curiositylist_stats_t.cc
===> CXX gui/depot_frame.cc
===> CXX gui/enlarge_map_frame_t.cc
===> CXX gui/extend_edit.cc
===> CXX gui/fabrik_info.cc
===> CXX gui/factory_chart.cc
===> CXX gui/factory_edit.cc
===> CXX gui/factorylist_frame_t.cc
===> CXX gui/factorylist_stats_t.cc
===> CXX gui/fahrplan_gui.cc
===> CXX gui/goods_frame_t.cc
===> CXX gui/goods_stats_t.cc
===> CXX gui/ground_info.cc
===> CXX gui/gui_container.cc
===> CXX gui/gui_convoiinfo.cc
===> CXX gui/gui_frame.cc
===> CXX gui/halt_detail.cc
===> CXX gui/halt_info.cc
===> CXX gui/halt_list_filter_frame.cc
===> CXX gui/halt_list_frame.cc
===> CXX gui/halt_list_stats.cc
===> CXX gui/help_frame.cc
===> CXX gui/jump_frame.cc
===> CXX gui/karte.cc
===> CXX gui/kennfarbe.cc
===> CXX gui/label_info.cc
===> CXX gui/labellist_frame_t.cc
===> CXX gui/labellist_stats_t.cc
===> CXX gui/line_item.cc
===> CXX gui/line_management_gui.cc
===> CXX gui/load_relief_frame.cc
===> CXX gui/loadsave_frame.cc
===> CXX gui/map_frame.cc
===> CXX gui/message_frame_t.cc
===> CXX gui/message_option_t.cc
===> CXX gui/message_stats_t.cc
===> CXX gui/messagebox.cc
===> CXX gui/money_frame.cc
===> CXX gui/optionen.cc
===> CXX gui/pakselector.cc
===> CXX gui/password_frame.cc
===> CXX gui/player_frame_t.cc
===> CXX gui/privatesign_info.cc
===> CXX gui/savegame_frame.cc
===> CXX gui/scenario_frame.cc
===> CXX gui/schedule_list.cc
===> CXX gui/server_frame.cc
===> CXX gui/settings_frame.cc
===> CXX gui/settings_stats.cc
===> CXX gui/signal_spacing.cc
===> CXX gui/sound_frame.cc
===> CXX gui/sprachen.cc
===> CXX gui/stadt_info.cc
===> CXX gui/station_building_select.cc
===> CXX gui/thing_info.cc
===> CXX gui/trafficlight_info.cc
===> CXX gui/welt.cc
===> CXX gui/werkzeug_waehler.cc
===> CXX old_blockmanager.cc
===> CXX player/ai.cc
===> CXX player/ai_goods.cc
===> CXX player/ai_passenger.cc
===> CXX player/simplay.cc
===> CXX simcity.cc
===> CXX simconvoi.cc
simconvoi.cc: In member function 'virtual bool convoi_t::can_overtake(overtaker_t*, int, int, int)':
simconvoi.cc:3120: warning: comparison between signed and unsigned integer expressions
===> CXX simdebug.cc
===> CXX simdepot.cc
===> CXX simdings.cc
===> CXX simevent.cc
===> CXX simfab.cc
===> CXX simhalt.cc
===> CXX simintr.cc
===> CXX simio.cc
===> CXX simline.cc
===> CXX simlinemgmt.cc
===> CXX simmain.cc
===> CXX simmem.cc
===> CXX simmenu.cc
===> CXX simmesg.cc
===> CXX simplan.cc
===> CXX simskin.cc
===> CXX simsound.cc
===> CXX simsys.cc
===> CXX simticker.cc
===> CXX simtools.cc
===> CXX simview.cc
===> CXX simware.cc
===> CXX simwerkz.cc
===> CXX simwin.cc
===> CXX simworld.cc
===> CXX sucher/platzsucher.cc
===> CXX unicode.cc
===> CXX utils/cbuffer_t.cc
===> CXX utils/checksum.cc
===> CXX utils/log.cc
===> CXX utils/memory_rw.cc
===> CXX utils/searchfolder.cc
===> CXX utils/sha1.cc
===> CXX utils/simstring.cc
===> CXX vehicle/movingobj.cc
===> CXX vehicle/simpeople.cc
===> CXX vehicle/simvehikel.cc
===> CXX vehicle/simverkehr.cc
===> CXX simgraph0.cc
===> CXX simsys_posix.cc
===> CXX music/no_midi.cc
===> CXX sound/no_sound.cc
sound/no_sound.cc:22: warning: unused parameter 'filename'
sound/no_sound.cc:33: warning: unused parameter 'key'
sound/no_sound.cc:33: warning: unused parameter 'volume'
===> LD  build/default/sim


I then copied the pak folder ( pak64 for 111 ) as downloaded to the build and also copied my simuconf.tab from the game I had run on the mac from the regular install into a new subfolder conf of my build.

The build folder already looks much different than the downloaded version 111. And running the result also did not turn out too successful either :
hendriksmac:simutrans hendrik$ /Users/hendrik/simutrans/nogui/sim -server 13353 -server_name "missing-piece" -server_comment "Missing piece simutrans server" -debug 2 -lang en -objects pak/ -load "network_64.sve" 2>&1Use work dir /Users/hendrik/simutrans/nogui/
Reading low level config data ...
parse_simuconf() at config/simuconf.tab: Reading simuconf.tab successful!
Simutrans version  111.0 from Dec 11 2011 r4911M
ERROR: obj_reader_t::read_file(): reading 'skin/ground.Outside.pak' failed!
Please report all errors to
team@64.simutrans.com
ERROR: obj_reader_t::load(): ground.Outside.pak not found, cannot guess tile size! (driving on left will not work!)
Please report all errors to
team@64.simutrans.com
Preparing display ...
parse_simuconf() at pak/config/simuconf.tab: Reading simuconf.tab successful!
Warning: translator::load(): no basic texts for language 'be'
Warning: translator::load(): no basic texts for language 'ca'
Warning: translator::load(): no basic texts for language 'ce'
Warning: translator::load(): no basic texts for language 'cn'
Warning: translator::load(): no basic texts for language 'cz'
Warning: translator::load(): no basic texts for language 'de'
Warning: translator::load(): no basic texts for language 'dk'
Warning: translator::load(): no basic texts for language 'en'
Warning: translator::load(): no basic texts for language 'es'
Warning: translator::load(): no basic texts for language 'et'
Warning: translator::load(): no basic texts for language 'fi'
Warning: translator::load(): no basic texts for language 'fr'
Warning: translator::load(): no basic texts for language 'gr'
Warning: translator::load(): no basic texts for language 'hr'
Warning: translator::load(): no basic texts for language 'hu'
Warning: translator::load(): no basic texts for language 'id'
Warning: translator::load(): no basic texts for language 'it'
Warning: translator::load(): no basic texts for language 'ja'
Warning: translator::load(): no basic texts for language 'ko'
Warning: translator::load(): no basic texts for language 'lt'
Warning: translator::load(): no basic texts for language 'nl'
Warning: translator::load(): no basic texts for language 'no'
Warning: translator::load(): no basic texts for language 'pl'
Warning: translator::load(): no basic texts for language 'pt'
Warning: translator::load(): no basic texts for language 'ro'
Warning: translator::load(): no basic texts for language 'ru'
Warning: translator::load(): no basic texts for language 'sk'
Warning: translator::load(): no basic texts for language 'sv'
Warning: translator::load(): no basic texts for language 'zh'
FATAL ERROR: simmain::main()
Unable to load any language files
*** PLEASE INSTALL PROPER BASE FILES ***

Aborting program execution ...

Please report all fatal errors to
team@64.simutrans.com
FATAL ERROR: simmain::main()
Unable to load any language files
*** PLEASE INSTALL PROPER BASE FILES ***

Abort trap



Where did I do a mistake ?

Dwachs

the language files are missing. See:

http://forum.simutrans.com/index.php?topic=2894.0

Download a full archive, copy the text folder to the desired location (in the same folder, where the executables sits).