aMule Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

We're back! (IN POG FORM)

Pages: [1] 2

Author Topic: Re: Wie kompiliere ich aMule CVS auf meinem Gentoox  (Read 6583 times)

popy

  • Guest
Re: Wie kompiliere ich aMule CVS auf meinem Gentoox
« on: October 25, 2006, 10:39:15 AM »

Hallo. Danke für die Info. Ich hoffe bald und das dann das KAD Problem behoben ist. Ich hätte versucht den aktuellen CVS auf meinem Gentoox zu compilieren aber leider ohne Erfolg! Das mit dem .EBuild File hat hingehauen, er lädt sich den Source und beginnt zu compilieren und richt dann mit einer Meldung ab er findet die Header-File dc.h nicht!!

Kennt das jemand von euch??

Naja, ich hoffe es bald released wird!

Danke
pOpY
Logged

Gerd78

  • Hero Member
  • *****
  • Karma: 9
  • Offline Offline
  • Posts: 681
Re: Wie kompiliere ich aMule CVS auf meinem Gentoox
« Reply #1 on: October 25, 2006, 01:53:32 PM »

dc.h ist Teil von wxWidgets; wenn es nicht gefunden wird, dann stimmt etwas mit Deiner wxWidgets-Installation nicht.

/usr/include/wx-2.6/wx/dc.h

Oder der ebuild könnte fehlerhaft sein. Versuch es doch einfach mal "zu Fuß" zu kompilieren.

Eines ist klar: Dein Problem ist kein aMule-Problem und wäre durch ein neues aMule-Release nicht gelöst.
Logged

popy

  • Guest
Re: Wie kompiliere ich aMule CVS auf meinem Gentoox
« Reply #2 on: October 25, 2006, 03:50:14 PM »

Hallo Gerd78.
Danke für die Antwort.

Hab ich mir gedacht das es von wxWidgets ist. Nur das komische ist wenn ich aMule 2.1.3 kompiliere mit emerge dann funktionierts ohne Probleme.

Hab wxGTK mit unicode support compiliert nur wenn ich dann die CVS compilieren möchte  bringt er denn fehler das die dc.h nicht gefunden wurde!

Das mit dem KAS Disconnect Problem hängt sicher nicht von meinen INET Zugang bzw. LAN ab! Ich hab ein internes LAN mit einer IPCOP Firewall wo ich die Ports sicher weitergeleitet habe. Es connected sich beim starten von amuled ja, nur nach einiger Zeit (ein paar Stunden) disconected sich KAD (ed2k läuft weiter). Es lässt sich nicht mehr manuell connecten bis man amuled beendet und wieder neu startet. Hab im Forum gelesen das einige dieses Problem haben, ich bin der meinung das es von aMule abhängt, oder nicht!?!?

Wurde in den aktuellen CVS nichts am KAD verbessert??

Meinst du per Hand compilieren ./configure, ./make usw.

Wie gehe ich da genau vor??

Ich habs schonmal so compiliert nur das Problem war dann das installieren!

Ich möchte meine Config Files weiterverwenden.

Würde mich über Info freuen!

Danke
pOpY
Logged

Gerd78

  • Hero Member
  • *****
  • Karma: 9
  • Offline Offline
  • Posts: 681
Re: Wie kompiliere ich aMule CVS auf meinem Gentoox
« Reply #3 on: October 25, 2006, 07:16:39 PM »

Die Problembeschreibung "dc.h nicht gefunden" ist nicht ausreichend! Hilfreich wäre es, ganz genau zu wissen, was der Compiler an der Stelle ausspuckt.

Die Headerdatei dc.h ist Teil von wxWidgets und wird hier installiert:

/usr/include/wx-2.6/wx/dc.h
/usr/include/wx-2.6/wx/gtk/dc.h

Schon der erste Schritt zur Fehleranalyse, welcher dieser beiden Header verantwortlich ist, ist mit dieser Fehlerbeschreibung einfach nicht zu machen. Sorry!

Also probier es einfach nochmal und kopier dann den Teil der Fehlermeldung vom letzten g++-Aufruf bis zur Fehlermeldung hierher. Im Zweifelsfall als Anhang, wenn es mehr als 100 Zeilen sind.

Mit "zu Fuß kompilieren" meine ich genau "./configure; make; make install". Und zwar deshalb, weil ich nicht weiß, was der ebuild eigentlich macht. Idealerweise sollte er genau das und nichts anderes machen, aber vielleicht macht er irgendetwas dummes (z.B. wxWidgets-CFLAGS mit irgendwelchem Optimierungskram überschreiben; dann können die Header natürlich auch nicht gefunden werden, selbst wenn sie installiert sind).

Die Konfigurationsdateien werden bei Upgrades, Downgrades usw. nicht angerührt, weil sie getrennt von den ausführbaren Dateien gespeichert werden, und einfach weiterbenutzt. Ob ein Upgrade auf CVS oder ein neues Release das Kad-Problem lösen würde, weiß ich nicht (das Kompilierproblem sicher nicht, weil dieses kein aMule-Problem ist).

Ich habe gerade nochmal verifiziert, dass alle 10 Einzelprogramme aus dem heutigen CVS mit einer sauberen wxGTK-Installation fehlerfrei durchkompilieren:

wxGTK-2.6.3.3
gtk2-2.10.6
gcc-c++-4.1.3
binutils-2.17.50.0.5
Logged

popy

  • Guest
Re: Wie kompiliere ich aMule CVS auf meinem Gentoox
« Reply #4 on: October 25, 2006, 09:04:23 PM »

Hallo Gerd.

Ich werde sobald ich zeit finde mich nochmals mit dem thema beschäftigen und Dir die genaue fehlermeldung Posten.

Du musst wissen ich verwende eine gentoox distri OHNE Windows-X System, darum ist das mit den Flags beim compilieren nicht so einfach wie bei einem system mit X-Windows!!!!

Wenn ich die neue aMule CVS ohne xWindows compilieren möchte,sollte ich dann auch die CVS von den oben genannten Programme runterladen und compilieren?? (mit configure, make, make install???) oder ist das egal welche versionen??

Ich werd mal testen und mich melden!

THX
pOpY
Logged

Gerd78

  • Hero Member
  • *****
  • Karma: 9
  • Offline Offline
  • Posts: 681
Re: Wie kompiliere ich aMule CVS auf meinem Gentoox
« Reply #5 on: October 25, 2006, 09:13:27 PM »

Wieso? Der Compiler-Output lässt sich mit und ohne X als Datei speichern:
Code: [Select]
make > /tmp/Compiler-Output.txt 2>&1Speichert die komplette Ausgabe (stdout und stderr) als Datei /tmp/Compiler-Output.txt.

Ich bräuchte wirklich dringend den kompletten Compiler-Output - wie Du leicht sehen kannst, ist einer der beiden dc.h-Header gtk-spezifisch und kann natürlich nicht gefunden werden, wenn Du mit wxBase anstelle von wxGTK kompilierst.

Die GUI-abhängigen Teile von aMule kompilieren dann natürlich nicht. Für das Problem gibt es mehrere Lösungen:

1. Die Fehler mittels
Code: [Select]
make -ieinfach ignorieren, das Build-System sollte dann einfach mit dem nächsten Target weitermachen, anstatt komplett abzubrechen

2. Einfach trotz nicht vorhandenen X-Servers die X-Bibliotheken, GTK und wxGTK installieren (beachte den Unterschied zwischen installiertem X und laufendem X-Server)

3. Die GUI-abhängigen Teile von aMule wärend ./configure deaktivieren (genau das hätte der ebuild machen müssen - wenn er das nicht getan hat, dann ist es ein kaputter ebuild)

...
Logged

popy

  • Guest
Re: Wie kompiliere ich aMule CVS auf meinem Gentoox
« Reply #6 on: October 25, 2006, 09:38:21 PM »

Hallo Gerd.

Hab jetzt mal den neusten CVS runtergeladen und mir folgendem configure Befehl das compilieren vorbereitet:

./configure --enable-optimize --disable-debug --enable-amule-daemon  --enable-amulecmd  --enable-webserver --enable-amule-gui --enable-cas --enable-nls --without-x

Ist das so Ok!?!?!? Mit den Parametern??

Danke
pOpY
Logged

Gerd78

  • Hero Member
  • *****
  • Karma: 9
  • Offline Offline
  • Posts: 681
Re: Wie kompiliere ich aMule CVS auf meinem Gentoox
« Reply #7 on: October 25, 2006, 10:46:52 PM »

--without-x ist autoconf-Nonsense ohne irgendeinen Effekt.

Die anderen --enable/--disable-Flags sind unvollständig... Du musst sämtlichen GUI-Code deaktivieren:

--disable-monolithic (fehlt)
--disable-amule-gui (ist bei Dir --enable => verkehrt)
--disable-wxcas (fehlt)
--disable-alc (fehlt)
Logged

popy

  • Guest
Re: Wie kompiliere ich aMule CVS auf meinem Gentoox
« Reply #8 on: October 25, 2006, 11:01:08 PM »

Den remote-gui schon disablen?? Ich will per amule-remote drauf??!!

ich lass mal make laufen, das dauert und dauert auf der xbox :-(

grüße
pOpY
Logged

Vollstrecker

  • Administrator
  • Hero Member
  • *****
  • Karma: 67
  • Offline Offline
  • Posts: 1549
  • Unofficial Debian Packager
    • http://vollstreckernet.de
Re: Wie kompiliere ich aMule CVS auf meinem Gentoox
« Reply #9 on: October 25, 2006, 11:26:16 PM »

Der remote-gui braucht auch die header für das graphische Zeug. Also entweder die mitinstallieren, oder aber aus dem selben tarball auf dem System mit dem du zugreifen willst die remote-gui separat kompilieren.
Logged
Homefucking is killing prostitution

popy

  • Guest
Re: Wie kompiliere ich aMule CVS auf meinem Gentoox
« Reply #10 on: October 25, 2006, 11:44:45 PM »

Ich verstehe nur Bahnhof. Werd jetzt die Optionen wie vorher gesagt nehmen mit denen von Gerd nur das amule-gui las ich an für den remote zugriff!! Hoffe das geht, las mal laufen über die Nacht.

Meld mich morgen dann.

Danke
pOpY
Logged

Arichy

  • Full Member
  • ***
  • Karma: 0
  • Offline Offline
  • Posts: 224
Re: Wie kompiliere ich aMule CVS auf meinem Gentoox
« Reply #11 on: October 26, 2006, 12:36:23 AM »

Ihr seid mächtig vom Strangthema abgekommen. Es wäre sinnvoll, einen neuen Strang aufzumachen, mit entsprechendem Titel  :rolleyes:
Logged
Gentoo i686

popy

  • Guest
Re: Wie kompiliere ich aMule CVS auf meinem Gentoox
« Reply #12 on: October 26, 2006, 09:06:58 AM »

Jetzt hab ich grad jemanden der sich auskennt ;-) (danke gerd) denn will ich nicht verlieren. Also hier nochmals der Kompilier Fehler:

BarShader.cpp:26:19: wx/dc.h: No such file or directory
BarShader.cpp: In member function `void CBarShader::BuildModifiers()':
BarShader.cpp:118: error: `sin' was not declared in this scope
BarShader.cpp:118: warning: unused variable 'sin'
BarShader.cpp: In member function `void CBarShader::Draw(wxDC*, int, int, bool)':
BarShader.cpp:161: error: aggregate `wxRect rectSpan' has incomplete type and cannot be defined
BarShader.cpp:167: error: invalid use of undefined type `struct wxDC'
BarShader.h:34: error: forward declaration of `struct wxDC'
BarShader.cpp:167: error: `wxTRANSPARENT_PEN' was not declared in this scope
BarShader.cpp:167: warning: unused variable 'wxTRANSPARENT_PEN'
BarShader.cpp: In member function `void CBarShader::FillRect(wxDC*, const wxRect&, uint32, bool)':
BarShader.cpp:255: error: `wxBrush' was not declared in this scope
BarShader.cpp:255: error: expected `;' before "brush"
BarShader.cpp:256: error: invalid use of undefined type `struct wxDC'
BarShader.h:34: error: forward declaration of `struct wxDC'
BarShader.cpp:256: error: `brush' was not declared in this scope
BarShader.cpp:257: error: invalid use of undefined type `struct wxDC'
BarShader.h:34: error: forward declaration of `struct wxDC'
BarShader.cpp:255: warning: unused variable 'wxBrush'
BarShader.cpp:256: warning: unused variable 'brush'
BarShader.cpp:259: error: invalid use of undefined type `const struct wxRect'
BarShader.h:33: error: forward declaration of `const struct wxRect'
BarShader.cpp:260: error: invalid use of undefined type `const struct wxRect'
BarShader.h:33: error: forward declaration of `const struct wxRect'
BarShader.cpp:260: error: invalid use of undefined type `const struct wxRect'
BarShader.h:33: error: forward declaration of `const struct wxRect'
BarShader.cpp:261: error: invalid use of undefined type `const struct wxRect'
BarShader.h:33: error: forward declaration of `const struct wxRect'
BarShader.cpp:262: error: invalid use of undefined type `const struct wxRect'
BarShader.h:33: error: forward declaration of `const struct wxRect'
BarShader.cpp:270: error: `wxPen' was not declared in this scope
BarShader.cpp:270: error: expected `;' before "pen"
BarShader.cpp:271: error: invalid use of undefined type `struct wxDC'
BarShader.h:34: error: forward declaration of `struct wxDC'
BarShader.cpp:271: error: `pen' was not declared in this scope
BarShader.cpp:274: error: invalid use of undefined type `struct wxDC'
BarShader.h:34: error: forward declaration of `struct wxDC'
BarShader.cpp:277: error: invalid use of undefined type `struct wxDC'
BarShader.h:34: error: forward declaration of `struct wxDC'
BarShader.cpp:266: warning: unused variable 'cRed'
BarShader.cpp:267: warning: unused variable 'cGreen'
BarShader.cpp:268: warning: unused variable 'cBlue'
BarShader.cpp:270: warning: unused variable 'wxPen'
BarShader.cpp:271: warning: unused variable 'pen'
BarShader.cpp:281: error: invalid use of undefined type `struct wxDC'
BarShader.h:34: error: forward declaration of `struct wxDC'
BarShader.cpp:281: error: `wxNullBrush' was not declared in this scope
BarShader.cpp:281: warning: unused variable 'wxNullBrush'
make[3]: *** [libmuleappgui_a-BarShader.o] Error 1
make[3]: Leaving directory `/p2p_Storage/amule-cvs/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/p2p_Storage/amule-cvs/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/p2p_Storage/amule-cvs'
make: *** [all] Error 2
Pro amule-cvs #

Sollte ich doch den amule-gui weglassen??? Funkt dann von Windows aus die Fernsteuerung mit aMuleRemote???

thx pOpY
Logged

popy

  • Guest
Re: Wie kompiliere ich aMule CVS auf meinem Gentoox
« Reply #13 on: October 26, 2006, 09:08:07 AM »

Ichnomals. Die File dc.h finde ich aus welchem Grund auch immer nicht auf meinem System??

pOpY
Logged

Gerd78

  • Hero Member
  • *****
  • Karma: 9
  • Offline Offline
  • Posts: 681
Re: Wie kompiliere ich aMule CVS auf meinem Gentoox
« Reply #14 on: October 26, 2006, 02:28:56 PM »

Hier gehört der Header hin:

/usr/include/wx-2.*/wx/dc.h

Ansonsten: Bitte bei Kompilierproblemen immer den letzten Compiler-Aufruf mit kopieren. Du hast die Fehlermeldung jetzt gerade genau unter dem letzten Compiler-Aufruf abgeschnitten.

So kann ich leider nicht feststellen,

(a) welche wxWidgets-Version Du benutzt,
(b) ob es daran liegt, dass der Header nicht auf dem System existiert oder aber daran, dass er wegen fehlerhafter Compiler-Flags nicht gefunden wird, obwohl er installiert ist.

Woher kommt denn Deine wxWidgets-Installation? ebuild? Selbst gemacht? Welche Version? usw. usf.
Logged
Pages: [1] 2