# 4pane filemanager compile error

## Gentoopfuscher

Hallo, ich habe wxWidgets-2.9.4 in /usr/local kompilliert, mit make, make install.

Dann das selbe mit dem filemanager 4pane. 

./configure klappt, make bricht nach einiger Zeit ab mit dem Fehler:

```

./MyTreeCtrl.cpp: In member function 'void TreeListHeaderWindow::DoDrawRect(wxDC*, int, int, int, int)':

./MyTreeCtrl.cpp:265:5: error: 'wxGTKDCImpl' was not declared in this scope

./MyTreeCtrl.cpp:265:18: error: 'gtk_impl' was not declared in this scope

./MyTreeCtrl.cpp:265:29: error: expected primary-expression before ')' token

./MyTreeCtrl.cpp:265:29: error: expected ')' before 'wxCheckDynamicCast'

make: *** [4Pane_MyTreeCtrl.o] Error 1
```

Was kann ich jetzt tun?

Danke schonmal.

----------

## Max Steel

wxwidgets gibts als fertiges ebuild zum mergen, nennt sich hier wxGTK.

Es wird empfohlen dieses zu verwenden.

für 4pane...

Ist es auch empfohlen ein ebuild dafür zu bauen, falls man sich das nicht zutraut kann man auf #gentoo.de (irc.freenode.net) oder hier oder auf bugs.gentoo.org (in Englisch) nachfragen ob jemand dafür ein ebuild schreiben möchte/kann.

Wenn du weiterhin selbst kompilieren willst, bitte nach /usr/local/ oder ~/ kompilieren. Allerdings kann der Fehler bereits durch die Verwendung des wxGTK Ebuild behoben sein.

----------

## Gentoopfuscher

Ich kompilliere meines Wissens immer nach /usr/local, jedenfalls wird dahin installiert.

Ein paar Dateien, die ich, um Fehler zu vermeiden da rueber kopiere, dann aber wieder zurueckkopiere.

hier habe ich " dc.h "  von /usr/local/bin nach /usr/bin kopiert.

Ich moechte das erstmal ausprobieren, ohne mein System mit Abhaengigkeiten zuzumuellen.

Wenn mir das programm gefaellt, dann kann ich es immernoch emergen.

Beim ebuild gab es mal einen Fehler vor ein paar Monaten ich hatte gehofft, der wuerde mit der naechten Version verschwinden.

----------

## franzf

Huch?

Die Abhängigkeiten musst du auch erfüllen wenn du händisch kompilierst. Noch schlimmer: Durch das Fehlen von USE-Flas musst du dir die configure-Optionen zum An/Abstellen bestimmter Features selber raussuchen.

Und das Schlimmste: /usr/local/{lib,include} wird noch vor /usr/{lib,include} durchsucht, was irgendwann extremste Probleme nach sich ziehen wird, wenn per emerge installierte Pakete die (dann veralteten/inkompatiblen/...) libs und includes verwendet.

Also:

Einfach emerge anwerfen und die Abhängigkeiten installieren. Wenn du für 4pane kein eigenes ebuild basteln willst kannst du einzig das immer noch selber kompilieren und nach ~/local/bin o.Ä installieren. Kleines Startscript basteln falls 4pane neben nem executable noch ne lib installiert (um LD_LIBRARY_PATH zu setzen) und gut ists.

Und zum Schluss noch mal (dass du es nicht vergisst):

BITTE niemals händisch nach /usr/local installieren (oder nach /usr). Selbst wenn du weißt was du dabei für einen Schaden anrichtest und dir auch ganz ganz sicher bist dass es unproblematisch ist (für den unwahrscheinlichen Fall, dass dies jemals zutreffen sollte) - lass es. Du ersparst dir und - vor allem - anderen eine Menge Arbeit bei der Fehlersuche.

----------

## Josef.95

Ja, unter Gentoo nutzt man i.d.R. Ebuilds :)

Bezüglich 4pane siehe auch im https://forums.gentoo.org/viewtopic-t-948574.html

----------

