2016-07-13 23 views
1

Ich versuche Geany-Plugins-1.28 zu kompilieren. Der Debugger-Plugin (die einzige, die ich brauche) gibt den Fehler:Wie fügt man zusätzliche Verzeichnisse bei der Konfiguration von Makefiles ein

debug.c:53:21: fatal error: vte/vte.h: No such file or directory 
#include <vte/vte.h> 

Offensichtlich muss er wissen, wo diese Datei zu kompilieren befindet. Ich habe die Datei vte.h im src-Verzeichnis des Hauptprogramms geany-1.28 gefunden. Beim Ausführen

Ich bekomme den gleichen Fehler über die fehlende Header später versuchen, das Debugger-Plugin zu kompilieren.

lief ich

./configure --help 

alle Optionen, um die Fahne zu bekommen. Die Ausgabe ist here

Wie bekomme ich dies richtig konfigurieren, so dass es kompiliert. Ich brauche die Debugger-Version 1.28 selbst zu kompilieren, da apt installiert nur 1,24, die ich denke, einen Fehler hat, weil es stürzt ab, wenn ich meinen Code mit dem Fehler führen:

close failed in file object destructor: 
sys.execpthook is missing 
lost sys.stderr 

Antwort

1

Wie in this answer angegeben, ist vte.h nicht die gesuchte Datei. Installieren Sie das Paket libvte (-dev) auf Ihrem System und führen Sie configure erneut aus.

Nur für das Protokoll: vte.h auf Geany ist ein Dummy, um Geany zu erlauben, dynamisch zu aktivieren oder zu deaktivieren, je nachdem, ob vte auf dem System installiert ist oder nicht.

+0

Danke, das hat funktioniert. Ich weiß nicht, wie ich das früher nicht bemerkt habe. – Jkallus

2

CFLAGS ist case-sensitive Umgebungsvariable, so sollten Sie Stellen Sie es vor dem Ausführen von configure ein und versuchen Sie nicht, es als Befehlszeilenargument zu übergeben. Diese Variante:

$ export CFLAGS=-I/home/pi/Desktop/geany-1.28/src 
$ ./configure 

verlässt CFLAGS für die aktuelle Shell, bis Sie es verlassen. Während dies:

$ CFLAGS=-I/home/pi/Desktop/geany-1.28/src ./configure 

setzt die Variable nur für Strombefehl, d.h. configure.

Einige andere Probleme:

  • Sie brauchen nicht sudo zu konfigurieren und machen. Es ist auch nicht notwendig für make install, wenn Sie PREFIX auf einen Pfad setzen, für den Sie Schreibrechte haben.
  • Erstellt das Build-System des Plugins auch alle Abhängigkeiten? Wenn nicht, können Sie Linker-Fehler ein wenig später auftreten.

Update:

ich versucht habe debugger Plugin zu bauen, habe Ihre Fehler beseitigen. Es scheint, dass vte.h kommen mit Geany ist es intrinsisch, während das Plugin voll funktionsfähige Datei aus der Bibliothek erfordert. Also habe ich gerade vte und vte-devel von Repos installiert. Trotzdem bekam ich von Glib einige andere Fehler. Ich werde meine Versuche nicht fortsetzen, all das jetzt zu bauen. Hoffe, meine Bemühungen werden zumindest ein wenig hilfreich sein.

+0

Ich habe das gerade versucht und immer noch den gleichen Fehler über vte.h nicht gefunden. Ist CFLAGS selbst die richtige Variable? Ich bin neu beim Kompilieren unter Linux. – Jkallus

+0

./configure arbeitet rekursiv und erstellt ein Makefile für einzelne Plugins. Wenn ich kompiliere, kompiliere ich nur das Debugger-Plugin. – Jkallus

+0

@Jkallus Was ist der genaue Pfad zu 'vte.h'? Wenn es '/ home/pi/Desktop/geany-1.28/src/vte.h' ist, erhalten Sie den Fehler, weil' #include 'mit' -I', das auf '...../src' zeigt, das will Datei in '/ home/pi/Desktop/geany-1.28/src/vte/vte.h'. Der Quick-n-Dirty-Workaround lautet 'ln -s /home/pi/Desktop/geany-1.28/src/home/pi/Desktop/geany- 1.28/src/vte'. – Sergey