Page 1 of 1

Fixed: Fehler beim Übersetzen

Posted: Fri Jun 11, 2021 8:38 pm
by uweb
Moin,
ich versuche die neusten Quellen unter Opensuse zu übersetzen und bekomme jetzt diese Fehlermeldung:

Code: Select all

g++ -I. -g -O2 -Wall -Wextra -pedantic -Werror -std=c++11 -c -o ArgumentHandler.o ArgumentHandler.cpp
In file included from ArgumentHandler.h:26,
                 from ArgumentHandler.cpp:24:
Utils/Utils.h: In static member function ‘static void Utils::Utils::SleepForSeconds(unsigned int)’:
Utils/Utils.h:113:51: error: ‘sleep_for’ is not a member of ‘std::this_thread’
  113 |                                 std::this_thread::sleep_for(std::chrono::seconds(seconds));
      |                                                   ^~~~~~~~~
Utils/Utils.h: In static member function ‘static void Utils::Utils::SleepForMilliseconds(unsigned int)’:
Utils/Utils.h:118:51: error: ‘sleep_for’ is not a member of ‘std::this_thread’
  118 |                                 std::this_thread::sleep_for(std::chrono::milliseconds(milliSeconds));
      |                                                   ^~~~~~~~~
make: *** [Makefile:72: ArgumentHandler.o] Fehler 1
Gruß Uwe

Re: Fehler beim Übersetzen

Posted: Sat Jun 12, 2021 5:08 am
by teddy
Hallo Uwe

Ich habe gerade keine OpenSuse Installation zur Hand. Ich vermute aber, dass da zwei Zeilen in meinem Code fehlen. Kannst du bitte versuchen folgendes am Anfang der Datei Utils/Utils.h einzufügen (es hat da schon andere includes):

Code: Select all

#include <thread>
#include <chrono>
Und dann nochmals kompilieren.

Und mir bitte Bescheid geben ob es nun funktioniert.

Gruss
Teddy

Re: Fehler beim Übersetzen

Posted: Sat Jun 12, 2021 9:21 pm
by uweb
Hallo Teddy,

der Fehler ist weg, aber es geht weiter

Code: Select all

make
g++ -I. -g -O2 -Wall -Wextra -pedantic -Werror -std=c++11 -c -o ArgumentHandler.o ArgumentHandler.cpp
g++ -I. -g -O2 -Wall -Wextra -pedantic -Werror -std=c++11 -c -o Config.o Config.cpp
g++ -I. -g -O2 -Wall -Wextra -pedantic -Werror -std=c++11 -c -o Languages.o Languages.cpp
g++ -I. -g -O2 -Wall -Wextra -pedantic -Werror -std=c++11 -c -o Manager.o Manager.cpp
Manager.cpp: In member function ‘bool Manager::RouteSave(RouteID, const string&, Delay, DataModel::Route::PushpullType, Length, Length, const std::vector<DataModel::Relation*>&, const std::vector<DataModel::Relation*>&, Visible, LayoutPosition, LayoutPosition, LayoutPosition, Automode, const DataModel::ObjectIdentifier&, Orientation, const DataModel::ObjectIdentifier&, Orientation, DataModel::Route::Speed, FeedbackID, FeedbackID, FeedbackID, FeedbackID, Pause, std::string&)’:
Manager.cpp:2225:54: error: ‘this’ pointer is null [-Werror=nonnull]
 2225 |                                         storage->Save(*dynamic_cast<Track*>(oldTrack));
      |                                         ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./Manager.h:37,
                 from ./Hardware/HardwareInterface.h:32,
                 from Hardware/HardwareHandler.h:28,
                 from Manager.cpp:28:
./Storage/StorageHandler.h:80:30: note: in a call to non-static member function ‘void Storage::StorageHandler::Save(const DataModel::Track&)’
   80 |                         void Save(const DataModel::Track& track);
      |                              ^~~~
Manager.cpp:2229:54: error: ‘this’ pointer is null [-Werror=nonnull]
 2229 |                                         storage->Save(*dynamic_cast<Signal*>(oldTrack));
      |                                         ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./Manager.h:37,
                 from ./Hardware/HardwareInterface.h:32,
                 from Hardware/HardwareHandler.h:28,
                 from Manager.cpp:28:
./Storage/StorageHandler.h:82:48: note: in a call to non-static member function ‘void Storage::StorageHandler::Save(const T&) [with T = DataModel::Signal]’
   82 |                         template<class T> void Save(const T& t)
      |                                                ^~~~
cc1plus: all warnings being treated as errors
make: *** [Makefile:72: Manager.o] Fehler 1
Ich nutze Opensuse Tumbleweed, die aktuellste Version. Brauchst Du sonst noch Angaben? Ende Mai hat das kompilieren noch funktioniert.

Gruß Uwe

Re: Fehler beim Übersetzen

Posted: Sun Jun 13, 2021 10:55 am
by teddy
Hallo Uwe

Ich konnte von dir genannten die Probleme und weitere mit dem neuen GCC 11 auch auf anderen System reproduzieren. Es sind doch einige, deshalb dauert es etwas das alles zu begradigen. Ich bin da aber dran. In jedem Fall danke für deinen Hinweis!

Gruss
Teddy

Re: Fehler beim Übersetzen

Posted: Sun Jun 13, 2021 11:42 am
by teddy
Hallo Uwe

Der neueste Commit sollte nun auch mit GCC 11 übersetzen.

Gruss
Teddy

Re: Fehler beim Übersetzen

Posted: Sun Jun 13, 2021 12:38 pm
by uweb
Hallo Teddy,

ja, das Übersetzen hat geklappt. Danke für die schnelle Lösung

Gruß Uwe

Re: Fixed: Fehler beim Übersetzen

Posted: Fri Jun 25, 2021 2:31 pm
by ddebahn
Hallo Teddy,
RailControl läßt sich heute leider nicht mehr übersetzen. Auf meinem Raspberry Pi sowie unter Ubuntu (WSL) nicht. Gestern ging es noch. Muß man vieleicht eine LIB-Datei oder etwas anders zusätzlich installieren.
schönes Wochende hier regnet es ganz leicht
Dieter

Re: Fixed: Fehler beim Übersetzen

Posted: Sat Jun 26, 2021 10:00 am
by teddy
Hallo Dieter

Hast du mir die Fehlermeldung vom Übersetzen?

Danke und Gruss
Teddy

Re: Fixed: Fehler beim Übersetzen

Posted: Sat Jun 26, 2021 12:42 pm
by teddy
Hallo Dieter

Ich habe den Fehler gefunden. Das sollte nun gefixt sein.

Danke für den Hinweis!

Gruss
Teddy

Re: Fixed: Fehler beim Übersetzen

Posted: Sat Jun 26, 2021 5:10 pm
by ddebahn
Hallo Teddy,
alles wieder super. Vielen, vielen Dank.
Dieter

Re: : Fehler beim Übersetzen

Posted: Sat Jun 03, 2023 9:08 pm
by uweb
Hallo,
bei mir klappt das Übersetzen nicht, evtl. liegt es an der GCC Version. Ich nutze Opensuse Tumbleweed, ein Rolling Release.


gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/13/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-suse-linux
Configured with: ../configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-languages=c,c++,objc,fortran,obj-c++,ada,go,d,jit,m2 --enable-offload-targets=nvptx-none,amdgcn-amdhsa, --enable-offload-defaulted --without-cuda-driver --enable-host-shared --enable-checking=release --disable-werror --with-gxx-include-dir=/usr/include/c++/13 --with-libstdcxx-zoneinfo=/usr/share/zoneinfo --enable-ssp --disable-libssp --disable-libvtv --enable-cet=auto --disable-libcc1 --enable-plugin --with-bugurl=https://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --with-slibdir=/lib64 --with-system-zlib --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-libphobos --enable-version-specific-runtime-libs --with-gcc-major-version-only --enable-linker-build-id --enable-linux-futex --enable-gnu-indirect-function --program-suffix=-13 --without-system-libunwind --enable-multilib --with-arch-32=x86-64 --with-tune=generic --with-build-config=bootstrap-lto-lean --enable-link-serialization --build=x86_64-suse-linux --host=x86_64-suse-linux
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 13.1.1 20230522 [revision dd36656ada05731c069ecd5b1878380294fb1f3e] (SUSE Linux)

Die Fehlermeldungen sind in der angehängten fehler.txt Datei ersichtlich, um sicher zu gehen, das es nicht an meiner Installation liegt, habe ich railcontrol neu von github geholt

Gruß Uwe

Re: Fixed: Fehler beim Übersetzen

Posted: Mon Jun 05, 2023 5:36 am
by teddy
Hallo Uwe

Ich bin gerade noch auf Ubuntu 22.04, eine Long Time Support Version. Diese hat noch die GCC Version 11 drauf. Ich muss das wohl aber mal mit einem GCC 13 kompilieren, da geht offenbar einiges nicht mehr.

Danke für den Hinweis, und du hörst wieder von mir, wenn ich das korrigiert habe. Dauert aber vermutlich ein paar Tage.

Gruss
Teddy

Re: Fixed: Fehler beim Übersetzen

Posted: Mon Jun 05, 2023 12:48 pm
by teddy
Hallo Uwe

Ich habe die Fehler mit GCC-13 behoben. Du solltest nun die neuesten Sourcen übersetzen können.

Gruss
Teddy

Re: Fixed: Fehler beim Übersetzen

Posted: Mon Jun 05, 2023 1:32 pm
by uweb
Hallo Teddy,

funktioniert wieder, vielen Dank.
Beim Starten kommt jetzt oben rechts eine Meldung "Eine neue Version von RailControl ist verfügbar"?

Gruß Uwe

Re: Fixed: Fehler beim Übersetzen

Posted: Mon Jun 05, 2023 6:10 pm
by teddy
Hallo Uwe

Oups, ja hab ich nun nachgetragen. Sollte nun (in den nächsten paar Minuten) weg sein.

Gruss
Teddy