Grafik mit GD library

Diskutiere Grafik mit GD library im C/C++ Forum im Bereich Programmieren unter Linux/Unix; Hi, ich möchte funktionen grafisch darstellen und habe dazu die gd-library gefunden. dei pakete libgd2-xpm und ligd2-noxpm sind auch...

  1. #1 Nemesis, 11.02.2010
    Nemesis

    Nemesis N3RD

    Dabei seit:
    28.01.2005
    Beiträge:
    2.176
    Zustimmungen:
    0
    Hi,
    ich möchte funktionen grafisch darstellen und habe dazu die gd-library gefunden.
    dei pakete libgd2-xpm und ligd2-noxpm sind auch installiert, aber mono mekkert immernoch, dass die funktionen nicht gefunden weren.

    muss noch mehr installiert werden ?

    danke !
     
  2. Anzeige

    Anzeige

    Wenn du mehr über Linux erfahren möchtest, dann solltest du dir mal folgende Shellkommandos anschauen.


    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 bytepool, 11.02.2010
    bytepool

    bytepool Code Monkey

    Dabei seit:
    12.07.2003
    Beiträge:
    791
    Zustimmungen:
    0
    Ort:
    /home/sweden/göteborg
    Mhh, leicht verklickt? Mono Fragen gehoeren doch eigentlich eher ins Mono Forum, nicht ins C/C++ Forum...
    Im Allgemeinen musst du natuerlich gucken dass alle Libs vernuenftig eingebunden sind, worueber du aber kein Wort verloren hast.

    mfg,
    bytepool
     
  4. Rvg

    Rvg Doppel-As

    Dabei seit:
    11.07.2004
    Beiträge:
    141
    Zustimmungen:
    0
    braeuchte man da nicht eher etwas wie gd-sharp?
     
  5. #4 Nemesis, 11.02.2010
    Zuletzt bearbeitet: 11.02.2010
    Nemesis

    Nemesis N3RD

    Dabei seit:
    28.01.2005
    Beiträge:
    2.176
    Zustimmungen:
    0
    hm, ich dachte das ist eine c++-betreffende frage ... die libs habe ich wie folgt eingebunden:
    Code:
    #include <stdio.h>
    #include <gd.h>
    oder gibts noch ne andere möglichkeit, was zu zeichnen ? also es geht darum mathematische funktionen auszugeben.
     
  6. #5 bytepool, 11.02.2010
    bytepool

    bytepool Code Monkey

    Dabei seit:
    12.07.2003
    Beiträge:
    791
    Zustimmungen:
    0
    Ort:
    /home/sweden/göteborg
    Und seit wann hat Mono etwas mit C++ zu tun?

    Wenn es tatsaechlich C++ ist, waere noch die Frage wie gelinkt und kompiliert wird.
    Edit: Und genaue Fehlermeldungen wirken manchmal auch wunder.

    mfg,
    bytepool
     
  7. #6 Nemesis, 11.02.2010
    Nemesis

    Nemesis N3RD

    Dabei seit:
    28.01.2005
    Beiträge:
    2.176
    Zustimmungen:
    0
    also gut ...

    Code:
    #include <stdio.h>
    #include <gd.h>
    
    
    int main(void)
    {
    	int xmax, ymax;
    	int xmin, ymin;
    	
    	/*image initialisieren*/
    	gdImagePtr image;
    	FILE *png;
    	int black, white, red, blue, yelow;
    	/*Wir erzeugen ein Image mit 401x401 Pixel*/
    	image=gdImageCreate(401,401);
    
    	/*Speicher für die Farben allozieren*/
    	white=gdImageColorAllocate(image,0,0,0);   /*Weiss*/
    	black=gdImageColorAllocate(image,255,255,255); /*Schwarz*/
    	red  =gdImageColorAllocate(image,255,0,0); /*rot*/
    	blue =gdImageColorAllocate(image,0,0,255); /*blau*/
    	yelow=gdImageColorAllocate(image,255,255,0); /*gelb*/
    
    	gdImageRectangle(image,0,0,99,99,black);
       	gdImageRectangle(image,1,1,49,49,yelow);
       	gdImageFill(image,25,25,red);
       	gdImageRectangle(image,50,1,98,49,yelow);
       	gdImageFill(image,75,25, blue);
       	gdImageRectangle(image,1,50,49,98,yelow);
       	gdImageFill(image, 25,75,blue);
       	gdImageRectangle(image,50,50,98,98,yelow);
       	gdImageFill(image, 75,75,red);
    
       	png = fopen("bild1.png", "wb");
    
       	gdImagePng(image,png);
    
       	fclose(png);
    
      	gdImageDestroy(image);
    
    return 0;
    }
    die fehler:
    Code:
    g++ -o "~/FunktionBerechnen/bin/Debug/FunktionBerechnen" "~/FunktionBerechnen/FunktionBerechnen/bin/Debug/FunktionBerechnen.o"  
    ~/FunktionBerechnen/FunktionBerechnen/bin/Debug/FunktionBerechnen.o: In function `main':
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:15: undefined reference to `gdImageCreate'
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:18: undefined reference to `gdImageColorAllocate'
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:19: undefined reference to `gdImageColorAllocate'
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:20: undefined reference to `gdImageColorAllocate'
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:21: undefined reference to `gdImageColorAllocate'
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:22: undefined reference to `gdImageColorAllocate'
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:24: undefined reference to `gdImageRectangle'
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:25: undefined reference to `gdImageRectangle'
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:26: undefined reference to `gdImageFill'
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:27: undefined reference to `gdImageRectangle'
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:28: undefined reference to `gdImageFill'
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:29: undefined reference to `gdImageRectangle'
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:30: undefined reference to `gdImageFill'
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:31: undefined reference to `gdImageRectangle'
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:32: undefined reference to `gdImageFill'
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:36: undefined reference to `gdImagePng'
    ~/FunktionBerechnen/FunktionBerechnen/FunktionBerechnen.cpp:40: undefined reference to `gdImageDestroy'
    collect2: ld returned 1 exit status
    Erstellung abgeschlossen -- 17 Fehler, 0 Warnungen
    siehe Datei -> Neu -> Neue Datei -> CPP -> General -> Empty C++ Source File
     
  8. #7 bytepool, 11.02.2010
    bytepool

    bytepool Code Monkey

    Dabei seit:
    12.07.2003
    Beiträge:
    791
    Zustimmungen:
    0
    Ort:
    /home/sweden/göteborg
    Jo, die Header Dateien befinden sich wie immer in libgd2-xpm-dev. Die xpm und noxpm Pakete sind bei mir allerdings auch Konflikte. ;)

    Und dann muss natuerlich noch gegen die Lib gelinkt werden:
    Code:
    g++ -o gdlibt gdlibt.cpp -lgd
    
    mfg,
    bytepool
     
  9. #8 Gast1, 11.02.2010
    Zuletzt von einem Moderator bearbeitet: 11.02.2010
    Gast1

    Gast1 Guest

    Kurze Frage von einem "Programmier"-DAU:

    Code:
    #include <stdio.h>
    Ist das nicht eigentlich eher "the C-way" einen Header einzubinden?

    Also ich kenne diese Art der Einbindung (meist, wenn man ältere Programme für den erfolgreichen Paketbau mit gcc>=4.3 patchen muss und dort einen/mehrere Header explizit hinzufügen muss, die seit dieser Version nicht mehr automatisch includiert werden) und weiß, daß das auch unter C++ funktioniert, aber sollte das in dem Fall für C++ nicht eher das hier sein?

    Code:
    #include <cstdio>
    Zumindest kenne ich das von den meisten C++-Programmen bei denen ich per Patch "Hand anlegen" musste.
     
  10. #9 bytepool, 12.02.2010
    bytepool

    bytepool Code Monkey

    Dabei seit:
    12.07.2003
    Beiträge:
    791
    Zustimmungen:
    0
    Ort:
    /home/sweden/göteborg
    Stimmt genau. Aber der hier praesentierte Code ist eh reines C soweit, und auch libgd2 scheint eine reine C Lib zu sein. Ich bin auch nicht so der Experte in C oder C++, ich merke mir meistens auch nur dass in C das .h dranbleibt und in C++ nicht. Doch da C bis C99 eh eine Untermenge von C++ war, duerfte es in der Praxis gar nicht so relevant sein. Der falsche Header fuehrt meines Wissens nur zu einer deprecation warning, funktioniert aber trotzdem.

    Aber im Allgemeinen ist es schon gut wenn man sich darueber im klaren ist, welche Sprache man denn eigentlich benutzt, schon allein aus Stilgruenden. Manche Leute schmeissen C und C++ ja vollkommen skrupellos durcheinander dass es einem nur kalt den Ruecken runter laeuft. ;)

    mfg,
    bytepool
     
Thema:

Grafik mit GD library

Die Seite wird geladen...

Grafik mit GD library - Ähnliche Themen

  1. Leistungsstarkes Tuxedo Notebook mit Nvidia-Grafik

    Leistungsstarkes Tuxedo Notebook mit Nvidia-Grafik: Tuxedo Computers hat mit dem »Tuxedo Book XP1610« ein neues Notebook für Anwender im Angebot, die viel Rechen- und Grafikleistung benötigen....
  2. Welche Grafikkarte?

    Welche Grafikkarte?: Hallo, ich brauche eine neue GraKa an die sich 2 Monitore über HDMI (oder zur Not DVI) anschliessen lassen, bevorzugt NVIDIA ... und Sie muss...
  3. Nvidia Hybrid-Grafikkarte: 3D Beschleunigung will nicht

    Nvidia Hybrid-Grafikkarte: 3D Beschleunigung will nicht: Ich verwende Lubuntu 16.04. und ein Notebook mit NVIDIA GeForce GT 540 M. Aus PPA (ppa:graphics-drivers/ppa) habe ich den Treiber "NVIDIA binary...
  4. Grafiktreiber von Nvidia und AMD mit Vulkan-Unterstützung

    Grafiktreiber von Nvidia und AMD mit Vulkan-Unterstützung: Nvidia und AMD haben Betaversionen ihrer Linux-Grafiktreiber herausgegeben, die erstmals die neue 3D-Schnittstelle Vulkan unterstützen. Aber auch...
  5. Grafiktreiber von Nvidia und AMD mit Vulkan-Unterstützung

    Grafiktreiber von Nvidia und AMD mit Vulkan-Unterstützung: Nvidia und AMD haben Betaversionen ihrer Linux-Grafiktreiber herausgegeben, die erstmals die neue 3D-Schnittstelle Vulkan unterstützen. Aber auch...
  1. Diese Seite verwendet Cookies um Inhalte zu personalisieren. Außerdem werden auch Cookies von Diensten Dritter gesetzt. Mit dem weiteren Aufenthalt akzeptierst du diesen Einsatz von Cookies.
    Information ausblenden