Fixed: Fehler beim Übersetzen

Bei Problemen bei der RailControl Installation
Post Reply
uweb
Posts: 16
Joined: Fri Jun 26, 2020 8:23 pm

Fixed: Fehler beim Übersetzen

Post 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
User avatar
teddy
Site Admin
Posts: 264
Joined: Thu May 07, 2020 2:39 pm
Contact:

Re: Fehler beim Übersetzen

Post 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
uweb
Posts: 16
Joined: Fri Jun 26, 2020 8:23 pm

Re: Fehler beim Übersetzen

Post 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
User avatar
teddy
Site Admin
Posts: 264
Joined: Thu May 07, 2020 2:39 pm
Contact:

Re: Fehler beim Übersetzen

Post 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
User avatar
teddy
Site Admin
Posts: 264
Joined: Thu May 07, 2020 2:39 pm
Contact:

Re: Fehler beim Übersetzen

Post by teddy »

Hallo Uwe

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

Gruss
Teddy
uweb
Posts: 16
Joined: Fri Jun 26, 2020 8:23 pm

Re: Fehler beim Übersetzen

Post by uweb »

Hallo Teddy,

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

Gruß Uwe
User avatar
ddebahn
Posts: 36
Joined: Sat Apr 03, 2021 11:36 am
Location: Geeste

Re: Fixed: Fehler beim Übersetzen

Post 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
User avatar
teddy
Site Admin
Posts: 264
Joined: Thu May 07, 2020 2:39 pm
Contact:

Re: Fixed: Fehler beim Übersetzen

Post by teddy »

Hallo Dieter

Hast du mir die Fehlermeldung vom Übersetzen?

Danke und Gruss
Teddy
User avatar
teddy
Site Admin
Posts: 264
Joined: Thu May 07, 2020 2:39 pm
Contact:

Re: Fixed: Fehler beim Übersetzen

Post by teddy »

Hallo Dieter

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

Danke für den Hinweis!

Gruss
Teddy
User avatar
ddebahn
Posts: 36
Joined: Sat Apr 03, 2021 11:36 am
Location: Geeste

Re: Fixed: Fehler beim Übersetzen

Post by ddebahn »

Hallo Teddy,
alles wieder super. Vielen, vielen Dank.
Dieter
Post Reply