Dieses Forum nutzt Cookies
Dieses Forum nutzt Cookies um Anmeldeinformationen (keine Passwörter) zu speichern. Dabei werden diese Informationen als kleine Textdateien auf deinem Endgerät abgelegt. Sie können nur durch dieses Forum ausgelesen werden und stellen kein Sicherheitsrisiko dar. Neben deinem letzten Login wird auch abgespeichert, welche Themen du bereits gelesen hast.

Zudem wird ein Cookie angelegt, in dem abgespeichert wird, ob du diesen Hinweis gelesen hast. Damit wird er nicht jedes mal angezeigt.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Kompilierprobleme JGRPP (von Zukünftige Meilensteine OTTD)
Verfasser Nachricht
Auge
Geschäftsführer
***

Beiträge: 847
Registriert seit: Mar 2009
Beitrag #1
Kompilierprobleme JGRPP (von Zukünftige Meilensteine OTTD)
Hallo

(22.07.2020 08:28)Eddi schrieb:  Wie immer bei Kompilierproblemen gilt: Probiere erstmal, das unmodifizierte Spiel zu kompilieren.

Habe ich getan, hat ebenfalls nicht funktioniert. Ich bekomme beim Lauf von cmake .. ein paar Warnungen über nicht gefundene Bibliotheken, obwohl diese laut Synaptic installiert sind (Allegro, SDL2, Fluidsynth). Bei Ausführung von make gibt es Meldungen über nicht korrekte sRGB-Profile, ansonsten aber keine Fehlerausgaben.

./configure:

Code:
auge@N130BU:~/Projekte/OpenTTD/build$ cmake ..
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detecting Personal Data directory - .openttd
-- Detecting Shared Data directory - (not set)
-- Detecting Global Data directory - /usr/local/share/games/openttd
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.11")
-- Looking for lzma_auto_decoder in /usr/lib/x86_64-linux-gnu/liblzma.so
-- Looking for lzma_auto_decoder in /usr/lib/x86_64-linux-gnu/liblzma.so - found
-- Looking for lzma_easy_encoder in /usr/lib/x86_64-linux-gnu/liblzma.so
-- Looking for lzma_easy_encoder in /usr/lib/x86_64-linux-gnu/liblzma.so - found
-- Looking for lzma_lzma_preset in /usr/lib/x86_64-linux-gnu/liblzma.so
-- Looking for lzma_lzma_preset in /usr/lib/x86_64-linux-gnu/liblzma.so - found
-- Found LibLZMA: /usr/include (found version "5.2.2")
-- Found LZO: /usr/lib/x86_64-linux-gnu/liblzo2.so  
-- Found PNG: /usr/lib/x86_64-linux-gnu/libpng.so (found version "1.6.34")
-- Could NOT find Allegro (missing: Allegro_LIBRARY Allegro_INCLUDE_DIR)
CMake Warning at CMakeLists.txt:43 (find_package):
  By not providing "FindSDL2.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "SDL2", but
  CMake did not find one.

  Could not find a package configuration file provided by "SDL2" with any of
  the following names:

    SDL2Config.cmake
    sdl2-config.cmake

  Add the installation prefix of "SDL2" to CMAKE_PREFIX_PATH or set
  "SDL2_DIR" to a directory containing one of the above files.  If "SDL2"
  provides a separate development package or SDK, be sure it has been
  installed.


-- Found SDL: /usr/lib/x86_64-linux-gnu/libSDLmain.a;/usr/lib/x86_64-linux-gnu/libSDL.so;-lpthread (found version "1.2.15")
-- Could NOT find Fluidsynth (missing: Fluidsynth_LIBRARY Fluidsynth_INCLUDE_DIR)
-- Found Freetype: /usr/lib/x86_64-linux-gnu/libfreetype.so (found version "2.8.1")
-- Found Fontconfig: /usr/lib/x86_64-linux-gnu/libfontconfig.so (found version "2.12.6")
-- Found ICU: TRUE (found version "60.2") found components:  i18n lx
-- Found XDG_basedir: /usr/lib/libxdg-basedir.so (found version "1.2.0")
-- Performing Test SSE_FOUND
-- Performing Test SSE_FOUND - Success
-- Performing Test XAUDIO2_FOUND
-- Performing Test XAUDIO2_FOUND - Failed
-- Found Grfcodec: /usr/bin/grfcodec  
-- Option Dedicated - OFF
-- Option Install FHS - ON
-- Option Use assert - ON
-- Option Use threads - ON
-- Option Use NSIS - OFF
-- Check if the system is big endian
-- Searching 16 bit integer
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of unsigned short
-- Check size of unsigned short - done
-- Using unsigned short
-- Check if the system is big endian - little endian
-- Performing Test LIFETIME_DSE_FOUND
-- Performing Test LIFETIME_DSE_FOUND - Success
-- PNG found -- -DWITH_PNG -- PNG::PNG
-- ZLIB found -- -DWITH_ZLIB -- ZLIB::ZLIB
-- LIBLZMA found -- -DWITH_LIBLZMA -- /usr/include /usr/include -- /usr/lib/x86_64-linux-gnu/liblzma.so /usr/lib/x86_64-linux-gnu/liblzma.so
-- LZO found -- -DWITH_LZO -- /usr/include /usr/include -- /usr/lib/x86_64-linux-gnu/liblzo2.so /usr/lib/x86_64-linux-gnu/liblzo2.so
-- XDG_basedir found -- -DWITH_XDG_BASEDIR -- /usr/include /usr/include -- /usr/lib/libxdg-basedir.so /usr/lib/libxdg-basedir.so
-- SDL found -- -DWITH_SDL --  /usr/include/SDL --  /usr/lib/x86_64-linux-gnu/libSDLmain.a;/usr/lib/x86_64-linux-gnu/libSDL.so;-lpthread
-- FREETYPE found -- -DWITH_FREETYPE -- Freetype::Freetype
-- Fontconfig found -- -DWITH_FONTCONFIG -- Fontconfig::Fontconfig
-- ICU_lx found -- -DWITH_ICU_LX -- /usr/include/icu-le-hb;/usr/include/harfbuzz;/usr/include/glib-2.0;/usr/lib/x86_64-linux-gnu/glib-2.0/include  -- /usr/lib/x86_64-linux-gnu/libiculx.so;/usr/lib/x86_64-linux-gnu/libicu-le-hb.so;/usr/lib/x86_64-linux-gnu/libicuuc.so;/usr/lib/x86_64-linux-gnu/libicudata.so
-- ICU_i18n found -- -DWITH_ICU_I18N --   -- /usr/lib/x86_64-linux-gnu/libicui18n.so;/usr/lib/x86_64-linux-gnu/libicuuc.so;/usr/lib/x86_64-linux-gnu/libicudata.so
-- SSE found -- -DWITH_SSE --   --  
-- Configuring done
-- Generating done
-- Build files have been written to: /home/auge/Projekte/OpenTTD/build
auge@N130BU:~/Projekte/OpenTTD/build$

make:

Code:
auge@N130BU:~/Projekte/OpenTTD/build$ make
Scanning dependencies of target orig_extra.grf
[  0%] Copying fix_graphics.png sprite file
[  1%] Copying arctic_brown.png sprite file
[  1%] Copying arctic_snowy.png sprite file
[  1%] Copying rapids.png sprite file
[  1%] Copying temperate.png sprite file
[  1%] Copying toyland.png sprite file
[  1%] Copying tropic_desert.png sprite file
[  1%] Copying tropic_forest.png sprite file
[  1%] Copying shore.png sprite file
[  2%] Copying airports.png sprite file
[  2%] Copying canals.png sprite file
[  2%] Copying chars.png sprite file
[  2%] Generating orig_extra.grf
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
[  2%] Built target orig_extra.grf
Scanning dependencies of target openttd.grf

/* danach folgen keine weiteren Fehlermeldungen */

[ 98%] Building CXX object CMakeFiles/openttd.dir/src/window.cpp.o
[ 98%] Linking CXX executable openttd
[ 98%] Built target openttd
Scanning dependencies of target regression_files
[ 98%] Copying regression/info.nut regression file
[ 98%] Copying regression/main.nut regression file
[ 98%] Copying regression/require.nut regression file
[ 98%] Copying regression/result.txt regression file
[100%] Copying regression/test.sav regression file
[100%] Copying stationlist/info.nut regression file
[100%] Copying stationlist/main.nut regression file
[100%] Copying stationlist/result.txt regression file
[100%] Copying stationlist/test.sav regression file
[100%] Copying stationlist/test.sav regression file
[100%] Built target regression_files
auge@N130BU:~/Projekte/OpenTTD/build$

Das vollständige Log liegt vor.

Ich erhalte das im folgenden Screenshot zu sehende Ergebnis.

   

Für die Datei openttd wird angegeben, sie sei als Programm auszuführen. Was mich auch verwundert, ist der Umstand, dass das Executable so groß ist. JGRPP 0.34.3 mit ./configure und make: 28.9 MByte, OpenTTD (aktueller Master) mit cmake .. und make: 57.8 MByte. Soll da so ein großer Unterschied sein?

   

Das sieht bis auf den CMake-Kram erstmal alles so aus, wie immer. Nur wird halt, wenn ich openttd ausführen will, nach dem auszuführenden Programm gefragt und das ist eben nicht so, wie immer.

   

Und genau hier verließen sie mich … Verwirrt

(24.07.2020 06:12)Bernhard schrieb:  JGRPP, zumindest 0.34, habe ich für Linux als absoluter Laie ohne Probleme compilieren können. (Allerdings läuft das neuerdings mit "Cmake…", da habe ich es noch nicht wieder probiert.)

Solange OpenTTD mit der Kombi aus ./configure und make kompilierbar war (was bis JGRPP 0.34.3 der Fall war) hat das bei mir auch anstandslos funktioniert. Das Problem tritt bei mir erst mit cmake ../make auf. Da andere, die selbst kompilieren, das aber offensichtlich hinkriegen, frage ich mich, ob auf meinem Rechner irgendwas fehlt (irgendeine Bibliothek oder so).

Tschö, Auge

My Little Forum 1, Forum und Board in PHP
(Dieser Beitrag wurde zuletzt bearbeitet: 25.07.2020 22:04 von Auge.)
25.07.2020 22:00
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
pETe!
Forum-Team
*****

Beiträge: 3.910
Registriert seit: Jan 2004
Beitrag #2
RE: Zukünftige Meilensteine OTTD
(25.07.2020 22:00)Auge schrieb:  Und genau hier verließen sie mich … Verwirrt

Versuchs mal im Terminal zu starten. Über die grafische Oberfläche hatte ich auch Probleme, wenn ich mich richtig erinnere, das scheint mir aber kein reines OpenTTD-Problem zu sein. Wenns damit geht künftig mit Shellscript starten.
26.07.2020 12:52
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Eddi
Tycoon
*****

Beiträge: 4.066
Registriert seit: Aug 2008
Beitrag #3
RE: Zukünftige Meilensteine OTTD
(25.07.2020 22:00)Auge schrieb:  ein paar Warnungen über nicht gefundene Bibliotheken, obwohl diese laut Synaptic installiert sind (Allegro, SDL2, Fluidsynth).
Stell mal sicher, daß du auch die "development"-Version installiert hast, nicht nur die ausführbaren Teile. Aber solange SDL(1) gefunden wurde, sollte auch eine spielbare Version rauskommen.

Zitat:make:
Da seh ich jetzt nix auffälliges. Die Farbprofil-Warnungen kommen von grfcodec. Die kannst du ignorieren, die verwendet das Spiel sowieso nicht.

Zitat:JGRPP 0.34.3 mit ./configure und make: 28.9 MByte, OpenTTD (aktueller Master) mit cmake .. und make: 57.8 MByte. Soll da so ein großer Unterschied sein?
Das würde ich spontan auf irgendwelche Debug-Einstellungen schieben.


Zitat:Das sieht bis auf den CMake-Kram erstmal alles so aus, wie immer. Nur wird halt, wenn ich openttd ausführen will, nach dem auszuführenden Programm gefragt und das ist eben nicht so, wie immer.
Prüfe mal, ob bei der Datei das "executable" Flag gesetzt wurde.
(Dieser Beitrag wurde zuletzt bearbeitet: 26.07.2020 13:42 von Eddi.)
26.07.2020 13:41
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Auge
Geschäftsführer
***

Beiträge: 847
Registriert seit: Mar 2009
Beitrag #4
RE: Zukünftige Meilensteine OTTD
Hallo

Ein Erfahrungsbericht von einem anderen Rechner. Auch auf dieser Maschine habe ich bisher sowohl OpenTTD an sich als auch JGRPP mit ./configure und make erfolgreich kompilieren können. Nach Lektüre eines Beitrags von JGR in seinem Thread zum Patchpack bin ich (soweit nötig) seiner erweiterten Anleitung gefolgt.

Code:
sudo apt-get install build-essential cmake git
sudo apt-get build-dep openttd

Git habe ich aus der ersten Aweisung herausgenommen, weil ich das schon habe. Das Paket cmake wurde neu installiert und bei build-essential scheint wegen cmake auch noch etwas neues dazugekommen zu sein. Bei den Abhängikeiten für OpenTTD scheint sich gegenüber meinem Softwarestand auch einiges getan zu haben. Auch wenn ich bisher alle Versionen erfolgreich kompilieren konnte, wurden jetzt einige zusätzliche Bibliotheken neu installiert.

Code:
git clone https://github.com/JGRennison/OpenTTD-patches.git jgrpp
cd jgrpp
git checkout jgrpp-0.35.1

Den Block konnte ich weglassen, da er schon existierte.

Code:
mkdir build
cd build
cmake ..
make

Wieder der ganz normale Prozess. Wieder wird das Fehlen von Allegro und Fluidsynth bemängelt. Weiterhin gibt es eine Warnung.

Code:
CMake Warning at CMakeLists.txt:77 (find_package):
  By not providing "FindFcitx.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "Fcitx", but
  CMake did not find one.

  Could not find a package configuration file provided by "Fcitx" with any of
  the following names:

    FcitxConfig.cmake
    fcitx-config.cmake

Der dennoch gestartete Kompilierungslauf selbst läuft ohne Fehlermeldungen. Das Programm lässt sich trotzdem nicht mit einen Doppelklick im Dateimanager starten.

(26.07.2020 12:52)pETe! schrieb:  Versuchs mal im Terminal zu starten. Über die grafische Oberfläche hatte ich auch Probleme, wenn ich mich richtig erinnere, das scheint mir aber kein reines OpenTTD-Problem zu sein. Wenns damit geht künftig mit Shellscript starten.

Danke für den Stubser.

Nachdem es mit einem Doppelklick nicht funktionierte, habe ich das Programm, wie in der Anleitung in JGRs Posting (oben verlinkt) in der letzten Zeile zu lesen und von pETe empfohlen, mit ./openttd zu starten versucht und das war schlussendlich von Erfolg gekrönt. So richtig schick ist dieser Weg aber nicht. Ich mache ja viel im Terminal, aber bei einem Programm, das auf dem Desktop laufen soll, erwarte ich, es per Maus mit einem Doppelklick starten zu können.

[edit]
Nach ein wenig herumexperimentieren mit dem anlegen eines Starters (Windows-Entsprechung: Verknüpfung) kann ich das Programm wieder vom Desktop aus mit einem Doppelklick starten. Das Problem, dass kein Programm zum ausführen von OpenTTD gefunden wurde, bezieht sich offensichtlich nur auf den Start per Doppelklick aus dem Dateimanager heraus.

Es geht konkret um genau dieses Problem, das sich nun quasi aufgelöst hat:

[attachment=7220]
[/edit]

Egal, nun muss ich den ganzen Prozess noch einmal auf der anderen Maschine, auf der ich zuerst scheiterte, nachvollziehen. Ich hoffe, damit wird sich mein Problem erledigen. Soviel zum gegenwärtigen Stand.

Tschö, Auge

My Little Forum 1, Forum und Board in PHP
(Dieser Beitrag wurde zuletzt bearbeitet: 26.07.2020 14:00 von Auge.)
26.07.2020 13:52
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
pETe!
Forum-Team
*****

Beiträge: 3.910
Registriert seit: Jan 2004
Beitrag #5
RE: Zukünftige Meilensteine OTTD
So richtig konnte ich das noch nicht einordnen, es ist mir bei Binaries aber schon hin und wieder begegnet, dass ich die aus der Dateiverwaltung nicht ausführen konnte. Vermutlich sind die Magic Bytes am Anfang falsch, bei dir denkt die Dateiverwaltung ja offensichtlich, es handele sich um eine Bibliothek?
26.07.2020 14:20
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Eddi
Tycoon
*****

Beiträge: 4.066
Registriert seit: Aug 2008
Beitrag #6
RE: Zukünftige Meilensteine OTTD
(26.07.2020 13:52)Auge schrieb:  Wieder wird das Fehlen von Allegro und Fluidsynth bemängelt.
Da würd ich mir keine Gedanken drum machen, die brauchst du eigentlich nicht. Allegro ist eine alternative Anzeigemethode, und Fluidsynth eine alternative Musikwiedergabe.

Zitat:Weiterhin gibt es eine Warnung. [...] Fcitx
K.A. was das ist, höre ich zum ersten mal.

Zitat:Das Problem, dass kein Programm zum ausführen von OpenTTD gefunden wurde, bezieht sich offensichtlich nur auf den Start per Doppelklick aus dem Dateimanager heraus.
dann müßte man mal schauen, ob es zu dem Dateimanager ein update gibt. Vermutlich gab es Änderungen im Dateiformat, so daß das jetzt falsch erkannt wird.
26.07.2020 14:23
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Auge
Geschäftsführer
***

Beiträge: 847
Registriert seit: Mar 2009
Beitrag #7
RE: Zukünftige Meilensteine OTTD
Hallo

Zur Info.

(26.07.2020 13:52)Auge schrieb:  Egal, nun muss ich den ganzen Prozess noch einmal auf der anderen Maschine, auf der ich zuerst scheiterte, nachvollziehen.

Ich habe auf dem anderen Rechner das JGRPP noch einmal kompiliert und kann nun mit JGRPP 0.35.1 spielen. großes Grinsen

Tschö, Auge

*btw*: @Forenteam; Ist es möglich, die mein Kompilierungsproblem betreffenden Postings in einen eigenen Thread auszulagern? Das originäre Thema des Threads betreffen sie ja nicht wirklich.

My Little Forum 1, Forum und Board in PHP
30.07.2020 12:18
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Übersetzungen für JGRPP Auge 9 2.128 17.03.2024 08:43
Letzter Beitrag: Uwe
OTTD Zukünftige Meilensteine OTTD ColognePaggo 60 21.101 30.07.2020 13:14
Letzter Beitrag: Bernhard
  (von Zukünftige Meilensteine OTTD) pETe! 0 965 25.07.2020 12:09
Letzter Beitrag: pETe!
  OTTD Wiki / OTTD Settings / Signalbau namor82 1 9.634 08.05.2006 13:56
Letzter Beitrag: pETe!

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste