2017-06-23 3 views
0

nicht finden Ich habe versucht, gtk + in Code: Blocks hinzuzufügen. Jedoch, als ich versuchte zu laufen und den Code zu kompilieren (Das habe ich Code aus dem Code: Blocks) bekam ich einen Fehler cannot find -lintl | error: ld returned 1 exit statusKann -lintl in GTK +

Wie kann ich -lintl finden? Wie kann ich es meinem Projekt \ zu meinem Computer hinzufügen?

EDIT: Dies ist das Buildprotokoll Ich habe haben:

Checking for existence: C:\Users\magshimim\Documents\Test\main.exe 

-------------- Build file: "no target" in "no project" (compiler: unknown)--------------- 

mingw32-gcc.exe -mms-bitfields -IC:/gtk/include/gtk-3.0 -IC:/gtk/include/cairo -IC:/gtk/include/pango-1.0 -IC:/gtk/include/atk-1.0 -IC:/gtk/include/cairo -IC:/gtk/include/pixman-1 -IC:/gtk/include -IC:/gtk/include/freetype2 -IC:/gtk/include -IC:/gtk/include/libpng15 -IC:/gtk/include/gdk-pixbuf-2.0 -IC:/gtk/include/libpng15 -IC:/gtk/include/glib-2.0 -IC:/gtk/lib/glib-2.0/include -c C:\Users\magshimim\Documents\Test\main.c -o C:\Users\magshimim\Documents\Test\main.o 
C:\Users\magshimim\Documents\Test\main.c: In function 'main': 
C:\Users\magshimim\Documents\Test\main.c:34:3: warning: 'gtk_vbox_new' is deprecated: Use 'gtk_box_new' instead [-Wdeprecated-declarations] 
    vbox = gtk_vbox_new (TRUE, 6); 
^
In file included from C:/gtk/include/gtk-3.0/gtk/gtk.h:245:0, 
       from C:\Users\magshimim\Documents\Test\main.c:2: 
C:/gtk/include/gtk-3.0/gtk/deprecated/gtkvbox.h:60:13: note: declared here 
GtkWidget * gtk_vbox_new  (gboolean homogeneous, 
      ^
mingw32-g++.exe -o C:\Users\magshimim\Documents\Test\main.exe C:\Users\magshimim\Documents\Test\main.o -LC:/gtk/lib -lgtk-3 -lgdk-3 -lgdi32 -limm32 -lshell32 -lole32 -Wl,-luuid -lpangocairo-1.0 -lpangoft2-1.0 -lfreetype -lfontconfig -lpangowin32-1.0 -lgdi32 -lpango-1.0 -lm -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl 
c:/mingw/bin/../lib/gcc/mingw32/5.3.0/../../../../mingw32/bin/ld.exe: cannot find -lintl 
collect2.exe: error: ld returned 1 exit status 
Process terminated with status 1 (0 minute(s), 0 second(s)) 
2 error(s), 1 warning(s) (0 minute(s), 0 second(s)) 
+0

Haben Sie versucht, es über die Befehlszeile zu kompilieren? –

+0

@ErikW Ich habe versucht, es mit gcc zu kompilieren und ich habe den gleichen Fehler –

+0

Ihr Code ist nicht relevant, warum der Linker eine Bibliothek nicht finden kann. Ersetzen Sie es durch das Build-Protokoll der fehlerhaften Build, die Sie in Code :: Blocks in der Registerkarte ** Build-Protokoll ** finden (nicht die Registerkarte ** Build-Nachrichten **). –

Antwort

0

Ich bin nicht sicher, wie dies in Windows implementiert ist, aber in Linux, gibt es keine solche Bibliothek (zumindest nicht wörtlich libintl.so). Es gibt eine libintl.h obwohl, also ich vermute, es gibt keinen tatsächlichen Code für libintl - nur Definitionen (Makros).

Also ich würde vorschlagen, dass Sie versuchen, ohne die -lintl in der Befehlszeile zu kompilieren.

Sie könnten auf Ihrem Datenträger überprüfen, ob eine Bibliothek libintl (.dll?) In den Bibliotheksverzeichnissen des Minggw-Pakets vorhanden ist, aber ich bezweifle es.