Suse Linux (SLES 15), TPF2 GOG und CommonAPI2 laufen nicht zusammen.

Willkommen in der Transport Fever Community

Wir begrüßen euch in der Fan-Community zu den Spielen Transport Fever und Train Fever, den Wirtschaftssimulatoren von Urban Games. Die Community steht euch kostenlos zur Verfügung damit ihr euch über das Spiel austauschen und informieren könnt. Wir pflegen hier einen freundlichen und sachlichen Umgang untereinander und unser Team steht euch in allen Fragen gerne beiseite.

 

Die Registrierung und Nutzung ist selbstverständlich kostenlos.

 

Wir wünschen euch viel Spaß und hoffen auf rege Beteiligung.

Das Team der Transport-Fever Community


  • Diese Diskussion wurde aus RE: CommonAPI2 Entwicklungsdiskussion, Fragen & Antworten ausgelagert (eis_os)




    mit der gog version läuft CommonAPI2 nicht:


    commonapi2.init 20230422

    commonapi2.init: Your TPF2 version 'gog_35304_2' isn't listed as known good version, please update CommonAPI2


    hab zum Test in die init.lua die version aufgenommen. Aber habe kein CommonAPI-Menü:

    Code
    commonapi2.init: Can't load native code CommonAPI2Native: error loading module 'CommonAPI2Native' from file '/home/pane/.local/share/Transport Fever 2/mods/eis_os_commonapi2_1/bin/CommonAPI2Native.so':
    ./libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /home/pane/.local/share/Transport Fever 2/mods/eis_os_commonapi2_1/bin/CommonAPI2Native.so)

    :(
    verstehe nicht, dass es mit der steam version funktioniert und mit gog nicht?

    Dell Precision T7600, 2 x Intel(R) Xeon(R) CPU E5-2665 (8 cores per CPU, 2 threads per core, 20MB L3 cache, 2.4/3.1GHz) (⁼32 logische CPUs), 512 GiB DDR3 ECC registered 1600 MT/s, NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] (11GB GDDR5X 352 bit), SAS Hardware RAID Level 1

    Linux version 5.14.21-150400.24.60-default (geeko@buildhost) (gcc (SUSE Linux) 7.5.0, GNU ld (GNU Binutils; SUSE Linux Enterprise 15) 2.39.0.20220810-150100.7.40) #1 SMP PREEMPT_DYNAMIC Wed Apr 12 12:13:32 UTC 2023 (93dbe2e)

    4 Mal editiert, zuletzt von tsilaicosneknurd ()

  • Steam bringt seine eigene libc6 "Runtime" mit. Die wird neuer sein, als das was dein System anbietet. War mir ziemlich sicher das die Version der so Datei via Buildroot gebaut habe.

    Sprich entwickelt und debuggert wird CommonAPI2 auf einem Ubuntu 22.04 Derivat und danach baue ich eigentlich die Release Versionen in einem Buildroot neu, das hab ich wohl vermasselt.


    GCC 9.1.0: GLIBCXX_3.4.26, CXXABI_1.3.12 hmm.


    Funktioniert die vorherige Version 20230411?

  • weiss nicht, ob es untergeganen ist, es geht um die GOG version.
    Nach 3 Stunden ist Steam gerade fertig mit validieren, teste gerade wieder die Steam-Version, da geht die neue commonAPI jedenfalls.
    Danach teste ich nochmal GOG mit der älteren Version

    Edit: habe auch alle Varianten (also verschiedene Reihenfolgen) ausprobiert, einen erweiterten LD_LIBRARY_PATH mitzugeben

    also zum Bleistift: "~/GOG Games/Transport Fever 2/game> LD_LIBRARY_PATH=:/home/pane/.steam/steam/ubuntu12_32/steam-runtime/lib/x86_64-linux-gnu/:.:$LD_LIBRARY_PATH ./TransportFever2"

    Dell Precision T7600, 2 x Intel(R) Xeon(R) CPU E5-2665 (8 cores per CPU, 2 threads per core, 20MB L3 cache, 2.4/3.1GHz) (⁼32 logische CPUs), 512 GiB DDR3 ECC registered 1600 MT/s, NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] (11GB GDDR5X 352 bit), SAS Hardware RAID Level 1

    Linux version 5.14.21-150400.24.60-default (geeko@buildhost) (gcc (SUSE Linux) 7.5.0, GNU ld (GNU Binutils; SUSE Linux Enterprise 15) 2.39.0.20220810-150100.7.40) #1 SMP PREEMPT_DYNAMIC Wed Apr 12 12:13:32 UTC 2023 (93dbe2e)

    Einmal editiert, zuletzt von tsilaicosneknurd ()

  • also weder geht es mit der alten version, noch mit buildoverwrite und eintrag "gog_35304_2"

    Code
    commonapi2.init 20230411
    commonapi2.init: Can't load native code CommonAPI2Native: error loading module 'CommonAPI2Native' from file '/home/pane/.local/share/Transport Fever 2/mods/eis_os_commonapi2_1/bin/CommonAPI2Native.so':
            ./libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /home/pane/.local/share/Transport Fever 2/mods/eis_os_commonapi2_1/bin/CommonAPI2Native.so)

    Ergänzung:

    Zitat

    (installiere jetzt doch wieder die GOG version. steam nervt)

    Und wieder... wollte die verdammte Friends-List schliessen und steam beendet das Laden von TPF2. zum kotzen

    Dell Precision T7600, 2 x Intel(R) Xeon(R) CPU E5-2665 (8 cores per CPU, 2 threads per core, 20MB L3 cache, 2.4/3.1GHz) (⁼32 logische CPUs), 512 GiB DDR3 ECC registered 1600 MT/s, NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] (11GB GDDR5X 352 bit), SAS Hardware RAID Level 1

    Linux version 5.14.21-150400.24.60-default (geeko@buildhost) (gcc (SUSE Linux) 7.5.0, GNU ld (GNU Binutils; SUSE Linux Enterprise 15) 2.39.0.20220810-150100.7.40) #1 SMP PREEMPT_DYNAMIC Wed Apr 12 12:13:32 UTC 2023 (93dbe2e)

    Einmal editiert, zuletzt von tsilaicosneknurd ()

  • Frage nebenbei.
    Ist es mit der Mod möglich, sich z.B. eine Liste an verfügbaren (also zum Spielzeitpunkt baubaren) Gleisen ausgeben zu lassen?
    (Möchte die Mods rausfiltern, die es mir bspw. ermöglichen schon 1800 elektrifizierte Gleise zu bauen)

    Dell Precision T7600, 2 x Intel(R) Xeon(R) CPU E5-2665 (8 cores per CPU, 2 threads per core, 20MB L3 cache, 2.4/3.1GHz) (⁼32 logische CPUs), 512 GiB DDR3 ECC registered 1600 MT/s, NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] (11GB GDDR5X 352 bit), SAS Hardware RAID Level 1

    Linux version 5.14.21-150400.24.60-default (geeko@buildhost) (gcc (SUSE Linux) 7.5.0, GNU ld (GNU Binutils; SUSE Linux Enterprise 15) 2.39.0.20220810-150100.7.40) #1 SMP PREEMPT_DYNAMIC Wed Apr 12 12:13:32 UTC 2023 (93dbe2e)

  • Also ich hab noch mal nachgeschaut, mein Build Toolchain nutzt gcc-9 (also ubuntu 20.04) um kompletten C++17 support zu haben.


    Aus deiner Signatur nutzt dein System gcc 7.5, stimmt das? Was sagt den gcc --version. Das kann nicht funktionieren.


    Erst ab gcc-9 ist c++17 nicht mehr experimental markiert, ich möchte das auch nicht mehr missen. (Funktionen wie std::filesystem, die in gcc-8 noch extern waren)

  • danke

    Also ich hab noch mal nachgeschaut, mein Build Toolchain nutzt gcc-9 (also ubuntu 20.04) um kompletten C++17 support zu haben.


    Aus deiner Signatur nutzt dein System gcc 7.5, stimmt das? Was sagt den gcc --version. Das kann nicht funktionieren.


    Erst ab gcc-9 ist c++17 nicht mehr experimental markiert, ich möchte das auch nicht mehr missen. (Funktionen wie std::filesystem, die in gcc-8 noch extern waren)

    gcc (SUSE Linux) 7.5.0

    richtig :-/

    SuSE ist immer etwas hintendran, da das meiste aus den stabilen SLE-Releases kommt...
    gog kommt mit keinem eigenen libc6? habe ja auch schon versucht, die libraries von steam mitzunutzen, was aber scheinbar nicht klappt.

    Dell Precision T7600, 2 x Intel(R) Xeon(R) CPU E5-2665 (8 cores per CPU, 2 threads per core, 20MB L3 cache, 2.4/3.1GHz) (⁼32 logische CPUs), 512 GiB DDR3 ECC registered 1600 MT/s, NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] (11GB GDDR5X 352 bit), SAS Hardware RAID Level 1

    Linux version 5.14.21-150400.24.60-default (geeko@buildhost) (gcc (SUSE Linux) 7.5.0, GNU ld (GNU Binutils; SUSE Linux Enterprise 15) 2.39.0.20220810-150100.7.40) #1 SMP PREEMPT_DYNAMIC Wed Apr 12 12:13:32 UTC 2023 (93dbe2e)

  • TPF2 selber nutzt boost filesystem, sprich das sollte auch mit älteren libc6 funktionieren, bei mir jedenfalls gibt es keine libc6 mehr im Steam Verzeichnis. Das war wohl früher mal anders, da gab es wohl aber recht kuriose 3D Grafikkarten Fehler wenn ich mich recht erinnere.


    Gibt es dann andere Linux Spieler hier mit ähnlichen Problemen?

  • Also ich hab noch mal nachgeschaut, mein Build Toolchain nutzt gcc-9 (also ubuntu 20.04) um kompletten C++17 support zu haben.


    Aus deiner Signatur nutzt dein System gcc 7.5, stimmt das? Was sagt den gcc --version. Das kann nicht funktionieren.


    Erst ab gcc-9 ist c++17 nicht mehr experimental markiert, ich möchte das auch nicht mehr missen. (Funktionen wie std::filesystem, die in gcc-8 noch extern waren)

    ich interpretiere das dann so. Solange nicht bei mir gcc >= 9 verfügbar ist, kann ich die mod nicht zusammen mit der gog-Version nutzen, da ich das hier auch so nicht kompilieren könnte?

    richtig?

    gog bringt ja auch eigene libraries mit - aber die sind wohl auch auf einem zu alten Stand?

    da fällt mir auf, dass GOG nicht das subdir "extra" in $LD_LIBRARY_PATH aufführt. hm

    Dell Precision T7600, 2 x Intel(R) Xeon(R) CPU E5-2665 (8 cores per CPU, 2 threads per core, 20MB L3 cache, 2.4/3.1GHz) (⁼32 logische CPUs), 512 GiB DDR3 ECC registered 1600 MT/s, NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] (11GB GDDR5X 352 bit), SAS Hardware RAID Level 1

    Linux version 5.14.21-150400.24.60-default (geeko@buildhost) (gcc (SUSE Linux) 7.5.0, GNU ld (GNU Binutils; SUSE Linux Enterprise 15) 2.39.0.20220810-150100.7.40) #1 SMP PREEMPT_DYNAMIC Wed Apr 12 12:13:32 UTC 2023 (93dbe2e)

    Einmal editiert, zuletzt von tsilaicosneknurd ()

  • Das sind die Libs die UG mitbringt. Keine Ahnung wie du CommonAPI2 mit der Steam Version nutzt. Das sollte auch nicht gehen mit dem selben Fehler.


    Schalte in der Steam Version den Debug Modus an (Einstellungen->Erweitert). Neustart des Spiels. In der UG Console (ggf musst du ^ auf ne andere Taste umlegen)

    os.getenv("LD_LIBRARY_PATH") ausführen, das sollte dir den library path rausgeben, den TPF2 gerade nutzt.

    Wenn Steam ein flatpak ist, kann es sein das du da irgendwo in den Untiefen des Systems ne andere libc6 hast. Ggf. installiert dir Steam aber auch ne neuere Libc6, ich hab da ne json Datei gefunden, die bei mir sagt, ggf. ist das bei dir anders?

    Code: ~/.steam/ubuntu12_32/steam-runtime/usr/lib/steamrt/steam-runtime-abi.json
    "libc.so.6": {
    "deb": "libc6",
    "from_host_system": true,

    Wie gesagt, TPF2 wird wohl auch mit gcc 7.5 funktionieren. CommonAPI2 braucht halt was neueres.


    https://gitlab.steamos.cloud/s…docs/container-runtime.md :/ Valve nutzt wohl ggf. auch noch linux namespaces und ein Container...

  • ah ok.

    print(os.getenv("LD_LIBRARY_PATH")) in der CommonAPI2 console ergibt:

    .:/home/pane/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_32:/home/pane/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_64:/usr/local/lib64:/usr/local/lib:/usr/lib64/graphviz:/usr/lib64/mysql-workbench:/usr/lib64/sssd/modules:/lib:/lib64:/usr/lib:/usr/lib64:/usr/lib/tls:/usr/lib64/tls:/home/pane/.local/share/Steam/ubuntu12_32/steam-runtime/lib/i386-linux-gnu:/home/pane/.local/share/Steam/ubuntu12_32/steam-runtime/usr/lib/i386-linux-gnu:/home/pane/.local/share/Steam/ubuntu12_32/steam-runtime/lib/x86_64-linux-gnu:/home/pane/.local/share/Steam/ubuntu12_32/steam-runtime/usr/lib/x86_64-linux-gnu:/home/pane/.local/share/Steam/ubuntu12_32/steam-runtime/lib:/home/pane/.local/share/Steam/ubuntu12_32/steam-runtime/usr/lib:/home/pane/.local/share/Steam/steamapps/common/Transport Fever 2


    muss das dann mal mit der GOG-Version vergleichen.

    Nur wie komme ich ohne CommonAPI in die Konsole?

    Dell Precision T7600, 2 x Intel(R) Xeon(R) CPU E5-2665 (8 cores per CPU, 2 threads per core, 20MB L3 cache, 2.4/3.1GHz) (⁼32 logische CPUs), 512 GiB DDR3 ECC registered 1600 MT/s, NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] (11GB GDDR5X 352 bit), SAS Hardware RAID Level 1

    Linux version 5.14.21-150400.24.60-default (geeko@buildhost) (gcc (SUSE Linux) 7.5.0, GNU ld (GNU Binutils; SUSE Linux Enterprise 15) 2.39.0.20220810-150100.7.40) #1 SMP PREEMPT_DYNAMIC Wed Apr 12 12:13:32 UTC 2023 (93dbe2e)

  • Hab ich doch geschrieben: :/

    Zitat

    Schalte in der Steam Version den Debug Modus an (Einstellungen->Erweitert). Neustart des Spiels. In der UG Console (ggf musst du ^ auf ne andere Taste umlegen)

    https://www.transportfever2.co…hp?id=modding:ingametools -> Console (Deswegen UG Console)


    Wenn der LD_LIBRARY_PATH bei dir für TPF2 Steam funktioniert inkl. CommonAPI2, sollte der selbe Pfad auch für die GOG Version laufen.

  • eis_os

    Hat den Titel des Themas von „Suse Linux, TPF2 GOG und CommonAPI2 laufen nicht zusammen.“ zu „Suse Linux (SLES 15), TPF2 GOG und CommonAPI2 laufen nicht zusammen.“ geändert.
  • okay, in GOG besteht der LD_LIBRARY_PATH nur aus ".:" da kann er natürlich vieles nicht finden.

    wenn ich die variable so übergebe, wie ich es in der steam version ausgelesen habe, funktioniert commonAPI2 dennoch nicht!? os.getenv() spuckt aber die richtigen daten aus:

    Zitat

    ".:/home/pane/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_32:/home/pane/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_64:/usr/local/lib64:/usr/local/lib:/usr/lib64/graphviz:/usr/lib64/mysql-workbench:/usr/lib64/sssd/modules:/lib:/lib64:/usr/lib:/usr/lib64:/usr/lib/tls:/usr/lib64/tls:/home/pane/.local/share/Steam/ubuntu12_32/steam-runtime/lib/i386-linux-gnu:/home/pane/.local/share/Steam/ubuntu12_32/steam-runtime/usr/lib/i386-linux-gnu:/home/pane/.local/share/Steam/ubuntu12_32/steam-runtime/lib/x86_64-linux-gnu:/home/pane/.local/share/Steam/ubuntu12_32/steam-runtime/usr/lib/x86_64-linux-gnu:/home/pane/.local/share/Steam/ubuntu12_32/steam-runtime/lib:/home/pane/.local/share/Steam/ubuntu12_32/steam-runtime/usr/lib:/home/pane/.local/share/Steam/steamapps/common/Transport Fever 2:"

    oder habe ich einen Syntaxfehler eingebaut?


    ah. habe das CWD (.) an das ende gestellt, jetzt scheint es zu gehen :-)

    Dell Precision T7600, 2 x Intel(R) Xeon(R) CPU E5-2665 (8 cores per CPU, 2 threads per core, 20MB L3 cache, 2.4/3.1GHz) (⁼32 logische CPUs), 512 GiB DDR3 ECC registered 1600 MT/s, NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] (11GB GDDR5X 352 bit), SAS Hardware RAID Level 1

    Linux version 5.14.21-150400.24.60-default (geeko@buildhost) (gcc (SUSE Linux) 7.5.0, GNU ld (GNU Binutils; SUSE Linux Enterprise 15) 2.39.0.20220810-150100.7.40) #1 SMP PREEMPT_DYNAMIC Wed Apr 12 12:13:32 UTC 2023 (93dbe2e)

    2 Mal editiert, zuletzt von tsilaicosneknurd ()

  • Immer noch der selbe Fehler bezüglich libc6 in der stdout.txt mit LD_LIBRARY_PATH?


    -edit-

    Ich sehe da aber immer noch das Problem, das die libc6 ggf. gar nicht mit deinem System läuft.

    Daher würde ich immer noch davon abraten CommonAPI2 zu nutzen.

  • ja, aber wie editiert, habe ich das Verzeichnis . (wo die GOG-Librarys sind) ans Ende gestellt, jetzt funktioniert das commonAPI2-Menü. Starte jetzt erstmals das Spiel. mal schauen, ob es läuft und ob ich die gleichen Probleme wie bei der Steam-Version habe: game not playable (unresponsive, when not paused) - Spiel nicht spielbar (nicht reagierend, wenn spiel nicht pausiert)


    nebenbei erwähnt: die GOG Version lädt deutlich schneller als die Steam-Version und benötigt weniger Arbeitsspeicher (identische config, identische mods (über symlinks die steam-mods zugänglich gemacht)).

    Dell Precision T7600, 2 x Intel(R) Xeon(R) CPU E5-2665 (8 cores per CPU, 2 threads per core, 20MB L3 cache, 2.4/3.1GHz) (⁼32 logische CPUs), 512 GiB DDR3 ECC registered 1600 MT/s, NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] (11GB GDDR5X 352 bit), SAS Hardware RAID Level 1

    Linux version 5.14.21-150400.24.60-default (geeko@buildhost) (gcc (SUSE Linux) 7.5.0, GNU ld (GNU Binutils; SUSE Linux Enterprise 15) 2.39.0.20220810-150100.7.40) #1 SMP PREEMPT_DYNAMIC Wed Apr 12 12:13:32 UTC 2023 (93dbe2e)

    Einmal editiert, zuletzt von eis_os () aus folgendem Grund: Ein Beitrag von tsilaicosneknurd mit diesem Beitrag zusammengefügt.

  • danke dir. leider fehlen filter optionen (nur aktuell verfügbare, startjahr, etc.) und sortierfunktion. sonst wäre das tool echt klasse...

    Dell Precision T7600, 2 x Intel(R) Xeon(R) CPU E5-2665 (8 cores per CPU, 2 threads per core, 20MB L3 cache, 2.4/3.1GHz) (⁼32 logische CPUs), 512 GiB DDR3 ECC registered 1600 MT/s, NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] (11GB GDDR5X 352 bit), SAS Hardware RAID Level 1

    Linux version 5.14.21-150400.24.60-default (geeko@buildhost) (gcc (SUSE Linux) 7.5.0, GNU ld (GNU Binutils; SUSE Linux Enterprise 15) 2.39.0.20220810-150100.7.40) #1 SMP PREEMPT_DYNAMIC Wed Apr 12 12:13:32 UTC 2023 (93dbe2e)

BlueBrixx