Derzeit ein RPC-System für verzögerungstoleranten Netzwerken aus ich schreibe Australien auf dem Serval Projekt basiert (GitHub) in C.Gebäude C mit auto unter OS X und Linux
Hauptsächlich auf die ich entwickle macOS El Capitan und alles funktioniert gut. Aber es ist etwas wichtig, dass mein Code auf macOS und Linux läuft. Aber Linux macht Ärger.
Ich wähle automake als mein Build-System, da dies der einzige ist, den ich mindestens ein wenig Erfahrung habe. Ich habe es auch mit CMake versucht, aber mit wenig Erfolg.
Mein Problem ist jetzt, dass alles gut auf MacOS funktioniert. Aber auf Linux (Debian) kompiliert nichts. autoreconf
erzeugt ein Konfigurationsskript ohne Fehler, configure
erzeugt ein Makefile ohne Fehler. Aber make
ergibt eine Menge Fehler. Und wenn ich viel sage, meine ich wirklich viel (ca. 75.000 Zeilen).
Das erste Problem ist folgendes: In file included from /usr/include/x86_64-linux-gnu/sys/types.h:29:0, from /usr/local/include/curl/curlbuild.h:131, from /usr/local/include/curl/curl.h:34, from rpc.h:1, from main.c:1: /usr/include/x86_64-linux-gnu/bits/types.h:30:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘typedef’ typedef unsigned char __u_char;
ich um gegoogelt und einige Leute gefunden sagen, dass diese Art von Fehler irgendwo aus dem Benutzercode kommt, vielleicht ein ;
oder ähnliches fehlen. Aber ich habe alles überprüft. Und eine fehlende ;
wäre auch ein Problem auf MacOS.
Mein Code kann in meinem Github repo. gefunden werden Bitte verwenden Sie den dev
Zweig. An diesem Punkt ist das Repo etwas ekelhaft und überhaupt nicht sauber. Ich werde aufräumen, wenn alles läuft.
Vielen Dank für Ihre Hilfe :)
Danke, das hat das Problem gelöst. – adur