2016-06-22 6 views
1

Ich versuche, das neueste INET 3.3.0 auf OMNe ++ 5.0 zu kompilieren. Ich betreibe Arch Linux Linux arch 4.5.4-1-ARCH #1 SMP PREEMPT Wed May 11 22:21:28 CEST 2016 x86_64 GNU/Linux.Fehler beim Kompilieren von INET-Framework für omnet ++

Beachten Sie, dass dies für mich funktionierte auf meinem Laptop auch mit Arch Linux. Auf meinem Desktop schlägt es jedoch fehl.

OMNe ++ ist installiert und funktioniert, ich kann die Beispielprojekte ohne Probleme ausführen.

Wenn ich INET kompiliere, schlägt es immer fehl. Ich habe versucht, die IDE alles selbst machen zu lassen, indem ich yes zu seinem Angebot antworte, das späteste INET zu installieren. Ich habe es selbst heruntergeladen hat, als ein Projekt importiert, rightclicked und lassen Sie es build project und ich habe zu gehen in das INET-Verzeichnis zurückgegriffen, die Ausgabe make makefiles, make MODE=release -j4, aber es alles führt zu dem folgenden Fehler:

inet/common/serializer/ipv4/IPv4Serializer.cc:410:129: note: in C++11  destructors default to noexcept 
inet/common/serializer/sctp/SCTPSerializer.cc 
inet/common/serializer/tcp/TCPSerializer.cc 
inet/common/serializer/udp/UDPSerializer.cc 
In file included from  inet/common/serializer/sctp/SCTPSerializer.cc:28:0: 
./inet/common/serializer/sctp/headers/sctphdr.h:415:22: error:  flexible array member in union 
     uint8_t info[]; 
       ^

Frühere Versionen von INET führen zu unterschiedlichen Fehlern, keine funktionieren. Hat jemand eine Idee?

+0

Was auf dem System der GCC-Versionsnummer ist? Dies scheint ein C++ - Kompatibilitätsproblem zu sein. Wahrscheinlich ist GCC Werkzeug alt? – Rudi

+0

Nein, gcc ist die Version 'gcc Version 6.1.1 20160602 (GCC)'. Wenn überhaupt, könnte es zu neu sein? – kunterbunt

+0

Ja. Inet wurde nicht mit GCC 6.x getestet – Rudi

Antwort

2

Sie einfach den Code in der sctphdr.h zu ändern haben und machen es

uint8_t info [128]; 
+0

Danke Mann, das funktioniert tatsächlich! – kunterbunt

Verwandte Themen