3Danke
ERLEDIGT
JA
JA
ANTWORTEN
5
5
ZUGRIFFE
244
244
EMPFEHLEN
-
Hallo Forum,
ich bin gerade dabei C++ zu lernen. Zur Übung möchte ich ein kleines Programm schreiben das mir Ordner Etiketten druckt.
Um die Grafiken zu generieren wollte ich die GD2 nutzen, die hab ich mir auch schon von der HP heruntergeladen. Allerdings weiß ich nicht wie ich diese jetzt einbinden und nutzen kann?
Das selbe gilt für Reguläre ausdrücke, welche Bibliothek muss ich includen damit ich diese Muster nutzen kann?
Hoffentlich kann mir jemand helfen? Ich verwende Ubuntu 11.4 32-Bit und die Netbeans IDE 7.0.1.
Schöne Grüße
Napofis
-
10.10.11 15:46 #2
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
Hi.
Also wenn du Ubuntu verwendest, führst du einfach diesen Befehl aus:
Danach kannst du die Header ganz normal einbinden:Code :1
sudo apt-get install libpcre3-dev libgd2-xpm-dev
Außerdem mußt du dann natürlich die pcre und gd Bibliothek zu deinem Programm dazulinken.Code c:1 2
#include <gd.h> #include <pcre.h>
\edit: In C++ könntest du für reg. Ausdrücke natürlich auch gleich die std::tr1 regex Klassen nutzen
oder statt libpcre den C++ Wrapper libpcre++.
GrußGeändert von deepthroat (10.10.11 um 15:52 Uhr)
If at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
Hi Danke für die Hilfe, das hat soweit auch geklappt.
Nun kommt immer nur dieser Fehler:
Code :1 2 3 4 5 6
main.cpp:(.text+0x1b): undefined reference to `gdImageCreateTrueColor' main.cpp:(.text+0x3d): undefined reference to `gdImageColorAllocate' main.cpp:(.text+0x59): undefined reference to `gdImageFill' main.cpp:(.text+0x83): undefined reference to `gdImagePngEx' main.cpp:(.text+0x93): undefined reference to `gdImageDestroy' collect2: ld returned 1 exit status
Hier mal das Test Programm:
Code cpp:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
#include <iostream> #include <gd.h> #include <fstream> using namespace std; int main(int argc, char** argv) { gdImage* img=gdImageCreateTrueColor(100, 100); int black = gdImageColorAllocate(img, 0, 0, 0); gdImageFill(img, 0, 0, black); FILE* out = fopen("/tmp/test.png","wb"); gdImagePngEx(img,out,9); fclose(out); gdImageDestroy(img); return 0; }
-
10.10.11 21:29 #4
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
Hi.
Wie bereits gesagt, musst du die gd Bibliothek zu deinem Programm linken.
Irgendwo in Netbeans muss es eine Projekt-Einstellung dafür geben. Linker -> Bibliotheken oder ähnlich.
GrußIf at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
Super Danke, war nicht so einfach aber jetzt hab ichs gefunden und alles klappt
.
Es war unter Projekt Eigenschaften -> build -> linker -> libraries
Dort hab ich die /usr/lib/libgd.a und libgd.so hinzugefügt. Ich hoffe mal das war das richtige.
Danke für die Hilfe, dir noch einen schönen Abend.
Gruß Napofis
-
11.10.11 08:27 #6
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
Hi.Nicht ganz. Jetzt ist es doppelt gemoppelt, da du sowohl die statische als auch die dynamische Bibliothek angegeben hast.
Du brauchst nur eine. (in der Regel die dynamische => .so).
\edit: es reicht wenn du auf "Add Library..." klickst und "gd" eintippst. Du mußt nicht ein bestimmte Datei suchen.
GrußGeändert von deepthroat (11.10.11 um 08:46 Uhr)
If at first you don't succeed, try again. Then quit. No use being a damn fool about it.
Ähnliche Themen
-
c-dll in .net verwenden
Von nullpunkt im Forum C/C++Antworten: 0Letzter Beitrag: 14.04.08, 07:56 -
[C#] C++ DLL verwenden
Von Passer im Forum .NET CaféAntworten: 1Letzter Beitrag: 08.07.07, 21:58 -
WMI Klassen verwenden?
Von partitionist im Forum C/C++Antworten: 2Letzter Beitrag: 26.10.05, 22:33 -
CVS verwenden
Von doctiffo im Forum .NET ArchivAntworten: 1Letzter Beitrag: 24.04.05, 12:07 -
JList verwenden
Von thodtie im Forum JavaAntworten: 1Letzter Beitrag: 28.10.04, 00:07





Zitieren

Login






