[PDFlib]Wie verwenden?



  • Hallo,

    ich versuche gerade die PDFLib Lite unter VS2008 zum laufen zu bringen.
    Die Beispiele habe ich zum laufen bekommen, indem ich die pdflib.h in das Projekt eingefügt habe, den Pfad zur pdflib.lib zum Linker hinzugefügt habe und die pdflib.dll kopiert habe.
    Nun habe ich versucht ein neues eigenes Projekt zu erstellen. Dort habe ich die pdflib.hpp und pdflib.cpp aus den Beispielen kopiert und die gleichen Schritte wie bei den Beispielen gemacht. Leider ohne Erfolg. Ich bekomme lauter unresolved Objects.
    Was muss ich machen, um die pdflib in eingenen Projekten zum laufen zu bekommen?

    Wenn ihr weitere Informationen braucht einfach fragen.

    Danke
    NiBurhe


  • Administrator

    Es wäre nicht schlecht, wenn du uns noch ein paar der Linker-Errors zeigst. Sind es nicht aufgelöste Objekte von der PDFLib oder von der CRT?

    Zudem ist das hier wohl ein wenig das falsche Forum. Nicht nur, weil es wohl eher in das Compiler-Forum gehört, sondern auch, weil du wahrscheinlich mehr Hilfe bei den Herstellern von PDFLib bekommst oder einem Forum dazu.

    Ist es die PDFLib von www.pdflib.com?
    Dann wäre vielleicht ein Blick hierher gar nicht so schlecht:
    http://www.pdflib.com/de/developer/mailing-liste/

    Grüssli



  • Du bist hier eigentlich ziemlich falsch, aber wie dem auch sei. Hast du alle dll's an die richtigen Orte hingetan, wie es auch in den Beispielen ist?

    Dann wären die genauen Fehlermeldungen sicher auch noch interessant. Und allenfalls ein bisschen Code. Allerdings würde ich, wenn ich dich wäre ein passenderes Forum suchen, weil das hier C++ ist. Und ausser, dass du das in C++ machen willst das ganze nichts mit C++ zu tun hat. 😉



  • Ja, es ist die pdflib von www.pdflib.com

    Error Output

    1>------ Build started: Project: Bewerbung, Configuration: Debug Win32 ------
    1>Linking...
    1>pdflib.obj : error LNK2019: unresolved external symbol _PDF_get_errmsg referenced in function "public: __thiscall PDFlib::PDFlib(void * (__cdecl*)(struct PDF_s *,unsigned int,char const ),void * (__cdecl)(struct PDF_s *,void *,unsigned int,char const ),void (__cdecl)(struct PDF_s *,void *),void )" (??0PDFlib@@QAE@P6APAXPAUPDF_s@@IPBD@ZP6APAX0PAXI1@ZP6AX03@Z3@Z)
    1>pdflib.obj : error LNK2019: unresolved external symbol _PDF_get_errnum referenced in function "public: __thiscall PDFlib::PDFlib(void * (__cdecl
    )(struct PDF_s *,unsigned int,char const ),void * (__cdecl)(struct PDF_s *,void *,unsigned int,char const ),void (__cdecl)(struct PDF_s *,void *),void )" (??0PDFlib@@QAE@P6APAXPAUPDF_s@@IPBD@ZP6APAX0PAXI1@ZP6AX03@Z3@Z)
    1>pdflib.obj : error LNK2019: unresolved external symbol _PDF_get_apiname referenced in function "public: __thiscall PDFlib::PDFlib(void * (__cdecl
    )(struct PDF_s *,unsigned int,char const ),void * (__cdecl)(struct PDF_s *,void *,unsigned int,char const ),void (__cdecl)(struct PDF_s *,void *),void )" (??0PDFlib@@QAE@P6APAXPAUPDF_s@@IPBD@ZP6APAX0PAXI1@ZP6AX03@Z3@Z)
    1>pdflib.obj : error LNK2019: unresolved external symbol _PDF_get_opaque referenced in function "public: __thiscall PDFlib::PDFlib(void * (__cdecl
    )(struct PDF_s *,unsigned int,char const ),void * (__cdecl)(struct PDF_s *,void *,unsigned int,char const ),void (__cdecl)(struct PDF_s *,void *),void )" (??0PDFlib@@QAE@P6APAXPAUPDF_s@@IPBD@ZP6APAX0PAXI1@ZP6AX03@Z3@Z)
    1>pdflib.obj : error LNK2019: unresolved external symbol _pdf_catch referenced in function "public: __thiscall PDFlib::PDFlib(void * (__cdecl
    )(struct PDF_s *,unsigned int,char const ),void * (__cdecl)(struct PDF_s *,void *,unsigned int,char const ),void (__cdecl)(struct PDF_s *,void *),void )" (??0PDFlib@@QAE@P6APAXPAUPDF_s@@IPBD@ZP6APAX0PAXI1@ZP6AX03@Z3@Z)
    1>pdflib.obj : error LNK2019: unresolved external symbol _PDF_set_parameter referenced in function "public: __thiscall PDFlib::PDFlib(void * (__cdecl
    )(struct PDF_s *,unsigned int,char const ),void * (__cdecl)(struct PDF_s *,void *,unsigned int,char const ),void (__cdecl)(struct PDF_s *,void *),void )" (??0PDFlib@@QAE@P6APAXPAUPDF_s@@IPBD@ZP6APAX0PAXI1@ZP6AX03@Z3@Z)
    1>pdflib.obj : error LNK2019: unresolved external symbol _pdf_jbuf referenced in function "public: __thiscall PDFlib::PDFlib(void * (__cdecl
    )(struct PDF_s *,unsigned int,char const ),void * (__cdecl)(struct PDF_s *,void *,unsigned int,char const ),void (__cdecl)(struct PDF_s *,void *),void )" (??0PDFlib@@QAE@P6APAXPAUPDF_s@@IPBD@ZP6APAX0PAXI1@ZP6AX03@Z3@Z)
    1>pdflib.obj : error LNK2019: unresolved external symbol _PDF_get_api referenced in function "public: __thiscall PDFlib::PDFlib(void * (__cdecl
    )(struct PDF_s *,unsigned int,char const ),void * (__cdecl)(struct PDF_s *,void *,unsigned int,char const ),void (__cdecl)(struct PDF_s *,void *),void *)" (??0PDFlib@@QAE@P6APAXPAUPDF_s@@IPBD@ZP6APAX0PAXI1@ZP6AX03@Z3@Z)
    1>pdflib.obj : error LNK2019: unresolved external symbol _PDF_pcos_get_number referenced in function "public: double __thiscall PDFlib::pcos_get_number(int,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?pcos_get_number@PDFlib@@QAENHV?basic_string@DU?basic\_string@DU?char_traits@D@std@@V?allocator@D@2@@std@@@Z)1>pdflib.obj:errorLNK2019:unresolvedexternalsymbol_PDF_pcos_get_stringreferencedinfunction"public:classstd::basic_string<char,structstd::char_traits<char>,classstd::allocator<char>>__thiscallPDFlib::pcos_get_string(int,classstd::basic_string<char,structstd::char_traits<char>,classstd::allocator<char>>)"(?pcos_get_string@PDFlib@@QAE?AV?allocator@D@2@@std@@@Z) 1>pdflib.obj : error LNK2019: unresolved external symbol \_PDF\_pcos\_get\_string referenced in function "public: class std::basic\_string<char,struct std::char\_traits<char>,class std::allocator<char> > \_\_thiscall PDFlib::pcos\_get\_string(int,class std::basic\_string<char,struct std::char\_traits<char>,class std::allocator<char> >)" (?pcos\_get\_string@PDFlib@@QAE?AV?basic_string@DU?chartraits@D@std@@V?char_traits@D@std@@V?allocator@D@2@@std@@HV23@@Z)
    1>pdflib.obj : error LNK2019: unresolved external symbol _PDF_pcos_get_stream referenced in function "public: unsigned char const * __thiscall PDFlib::pcos_get_stream(int,int *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?pcos_get_stream@PDFlib@@QAEPBEHPAHV?basic_string@DU?basic\_string@DU?char_traits@D@std@@V?$allocator@D@2@@std@@1@Z)
    1>MSVCRTD.lib(crtexe.obj) : error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup
    1>D:\Dateien\Visual Studio 2008\Projects\Bewerbung\Debug\Bewerbung.exe : fatal error LNK1120: 12 unresolved externals
    1>Build log was saved at "file://d:\Dateien\Visual Studio 2008\Projects\Bewerbung\Bewerbung\Debug\BuildLog.htm"
    1>Bewerbung - 13 error(s), 0 warning(s)
    ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

    Wenn es das falsche Forum ist, bitte in das richtige verschieben.

    Danke
    NiBurhe



  • Beim Linker die Lib angeben



  • Ich habe folgende additional Lib angegeben:

    ...\PDFlib-Lite-7.0.3\libs\pdflib\Release_DLL

    In dem Ordner befindet sich auch die pdflib.lib



  • 1>------ Build started: Project: Bewerbung, Configuration: Debug Win32 ------

    ...\PDFlib-Lite-7.0.3\libs\pdflib*Release*_DLL

    Vielleicht mal für Debug die Debug nehmen?


  • Administrator

    Aber hast du die Lib auch angegeben?
    Hab hier zwar kein VS2008, nur VS2005, aber hoffe mal, dass sich diesbezüglich nichts geändert hat.
    Unter den Projekteigenschaften:
    Configuration Properties -> Linker -> Input
    Bei Additional Dependencies, hast du da die pdflib.lib angegeben?

    Zudem solltest du darauf achten, ob es nicht für den Debugmodus noch eine andere Lib gibt, z.B. eine pdflibd.lib.

    Grüssli



  • Danke,

    ich hatte es unter dem falschen Punkt eingetragen, ich hatte es unter Linker -> General -> Additional Librarys Directories eingetragen.

    Nun habe ich aber leider folgendes Problem

    1>LINK : fatal error LNK1104: cannot open file 'D:\Dateien\Visual.obj'

    Danke für die Hilfe bisher

    NiBurhe


  • Administrator

    Ehm, keine Ahnung, überprüf mal diese Möglichkeiten:
    http://msdn.microsoft.com/en-us/library/ts7eyw4s(VS.71).aspx

    Grüssli



  • Danke,

    es waren Spaces im Pfadnamen und da ich keine Anführungszeichen gesetzt habe, hat er es aufgeteilt und die libs dannn nicht mehr gefunden.

    Jetzt läuft es.

    Grüße
    Nils



  • Dieser Thread wurde von Moderator/in Phoemuex aus dem Forum C++ in das Forum Compiler- und IDE-Forum verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.


Anmelden zum Antworten