Ich habe ein paar Tage lang mit D herumgespielt und war ziemlich aufgeregt, bis ich versucht habe, gtkd zum Laufen zu bringen. Ich habe jetzt den Großteil von 3 Tagen damit verschwendet, eine funktionierende Einrichtung zu bekommen und fange langsam an, (bzw. habe schon vor langer Zeit) ein wenig demoralisiert zu werden. Ich frage mich, ob mir jemand helfen kann, bevor ich aufgebe. Ein Großteil der Informationen, die ich online finden kann, ist veraltet, daher bin ich mir nicht einmal sicher, ob ich überhaupt richtig liege, wenn ich denke, dass dies überhaupt möglich ist.
Der Rest dieses Textes handelt nur davon, was ich bisher versucht habe, und Sie müssen ihn möglicherweise nicht lesen, wenn Sie eine schnelle Lösung haben. Springen Sie also frei zu ... [Hierhin springen]
Also, zuerst muss ich wissen, ob tango tatsächlich für die Verwendung mit D2.0 verfügbar ist. Ich glaube, dass es ursprünglich nicht verfügbar war, aber jetzt ist D2.x so, dass Sie tango und phobos nebeneinander verwenden können. Wenn dies nicht stimmt, bin ich wahrscheinlich am ersten Hindernis gescheitert und dies ist von vornherein ein Fehlschlag.
Die Schritte, die ich bisher unternommen habe:
- Ich habe gdc aus den Ubuntu-Repositories installiert.
- Ich habe die libtango-headers aus den Repos installiert (Anmerkung: Nur Header, keine Bibliotheken verfügbar, also das ist nicht besonders hilfreich).
- Ich habe dsss manuell installiert.
Diese Einrichtung würde D kompilieren, aber als ich versuchte, gtkd zu installieren (mit dsss), kompilierte es, aber ich bekam allerhand Fehlermeldungen (die sich auf tango bezogen), als ich versuchte, irgendetwas damit zu kompilieren. Nun, wie ich bereits erwähnt habe, hatte ich keine Bibliotheken, also hätte dies nicht überraschend sein sollen. Ich versuchte, die tango-Bibliotheken manuell zu installieren, erhielt aber trotzdem viele Fehlermeldungen und musste schließlich zu einem dsss net install tango
greifen, was mich davor warnte, dass ich nicht zu phobos zurückkehren könnte (was mich verwirrte, da ich dachte, dass die beiden nebenher genutzt werden könnten). Wie auch immer, ich fuhr fort und meine Einrichtung war komplett durcheinander. Ich konnte jetzt kein D mehr kompilieren.
Entschuldigung, dass ich in diesem letzten Abschnitt nicht genauer darauf eingehen konnte, welche Fehlermeldungen ich erhalten habe, ich erinnere mich ehrlich gesagt nicht daran.
Wie auch immer, ich habe alles entfernt, was ich installiert hatte, und habe von vorne angefangen.
- Ich habe gdc aus den Repos installiert.
- Ich habe dsss manuell installiert.
Ich habe jetzt gelesen, dass das neueste tango nicht mit gdc funktioniert (bin mir nicht sicher, ob das stimmt), also habe ich
- Das Deb für dmd heruntergeladen und installiert.
- Die neueste tango (Bibliotheken und Header) manuell installiert.
- Gtkd mit dsss installiert.
Jetzt kann dsss dmd nicht erkennen, also kann ich nur gdc damit verwenden. Das findet jedoch nicht tango. Wenn ich dmd direkt benutze, findet es tango und gtkd, aber ich erhalte Fehlermeldungen über volatile
-Anweisungen, die veraltet sind. Etwas, was anscheinend in D2.x wahr ist, was mich wieder zu der Frage führt, ob tango überhaupt unterstützt wird.
Mensch, ich bin verwirrt!
[Hierhin springen]
Wenn mir jemand schrittweise Anweisungen geben kann, wie ich eine funktionierende Einrichtung aufsetze, wäre ich Ihnen sehr dankbar!
Danke, T.
Aktualisierung: "Wir sind da!"
Also habe ich dmd.2.049.zip von http://www.digitalmars.com/d/download.html heruntergeladen und in mein Home-Verzeichnis entpackt und habe ein export PATH = $PATH:~/dmd2/linux/bin
gemacht (danke an dsimcha).
Ich habe dsss vergessen. Ich habe die svn-Version von gtkd gemäß den Anweisungen auf http://www.dsource.org/projects/gtkd/wiki/UsingSubversion heruntergeladen. Ich habe die GNUmakefile
bearbeitet, um das Präfix auf /home/ich/dmd2/linux
zu ändern, und habe ein make install
gemacht.
Ich habe die Datei ~/dmd2/linux/bin/dmd.conf
bearbeitet, damit die Include-Pfade ../include
enthalten (die gtkD-Bibliotheken werden in ../lib
platziert, also musste ich die Bibliothekspfade nicht bearbeiten).
Jetzt, um mit gtkD zu kompilieren, musste ich gegen libgtkd und libdl linken. Dies wurde durchgeführt, dmd mydprog.d -L-lgtkd -L-ldl
(danke an jpf).