C++ 11 und lib integrieren in exe



  • Hallo,

    Ich bin neu hier auf dem Bereich rund um C und C++.
    Und ich habe seit Wochen an einer Anwendung, die etwas älter ist gearbeitet.
    Leider komme ich dazu nicht weiter.

    g++ main.cc licensing/license-manager-key-register.cc -I/usr/local/lib -std=c++11 -O3 -o license-manager -LIB licensepp.lib
    
    
    /users/downloads/cppp/pocketcpp/mingw/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../x86_64-w64-mingw32/bin/ld.exe: \Users\AppData\Local\Temp\ccjwynxO.o:main.cc:(.text$_ZNK9licensepp18BaseLicenseManagerI25LicenseManagerKeyRegisterE8validateEPKNS_7LicenseEbRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE[_ZNK9licensepp18BaseLicenseManagerI25LicenseManagerKeyRegisterE8validateEPKNS_7LicenseEbRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE]+0xa0): undefined reference to `licensepp::IssuingAuthority::validate(licensepp::License const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const'
    /users/downloads/cppp/pocketcpp/mingw/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../x86_64-w64-mingw32/bin/ld.exe: \Users\AppData\Local\Temp\ccjwynxO.o:main.cc:(.text.startup+0x399): undefined reference to `licensepp::IssuingAuthority::issue(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const'
    /users/downloads/cppp/pocketcpp/mingw/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../x86_64-w64-mingw32/bin/ld.exe: \Users\AppData\Local\Temp\ccjwynxO.o:main.cc:(.text.startup+0x3be): undefined reference to `licensepp::License::toString[abi:cxx11]()'
    /users/downloads/cppp/pocketcpp/mingw/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../x86_64-w64-mingw32/bin/ld.exe: \Users\AppData\Local\Temp\ccjwynxO.o:main.cc:(.text.startup+0x455): undefined reference to `licensepp::License::formattedExpiry[abi:cxx11]() const'
    /users/downloads/cppp/pocketcpp/mingw/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../x86_64-w64-mingw32/bin/ld.exe: \Users\AppData\Local\Temp\ccjwynxO.o:main.cc:(.text.startup+0x6f2): undefined reference to `licensepp::License::License()'
    /users/downloads/cppp/pocketcpp/mingw/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../x86_64-w64-mingw32/bin/ld.exe: \Users\AppData\Local\Temp\ccjwynxO.o:main.cc:(.text.startup+0x702): undefined reference to `licensepp::License::loadFromFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
    /users/downloads/cppp/pocketcpp/mingw/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../x86_64-w64-mingw32/bin/ld.exe: \Users\AppData\Local\Temp\ccjwynxO.o:main.cc:(.text.startup+0x84c): undefined reference to `licensepp::License::formattedExpiry[abi:cxx11]() const'
    /users/downloads/cppp/pocketcpp/mingw/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../x86_64-w64-mingw32/bin/ld.exe: \Users\AppData\Local\Temp\ccyW2n2C.o:license-manager-key-register.cc:(.text.startup+0xfe): undefined reference to `licensepp::IssuingAuthority::IssuingAuthority(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, bool)'
    /users/downloads/cppp/pocketcpp/mingw/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../x86_64-w64-mingw32/bin/ld.exe: \Users\AppData\Local\Temp\ccyW2n2C.o:license-manager-key-register.cc:(.text.startup+0x13b): undefined reference to `licensepp::IssuingAuthority::IssuingAuthority(licensepp::IssuingAuthority const&)'
    collect2.exe: error: ld returned 1 exit status
    make: *** [Makefile:2: license-manager] Error 1
    

    Vielleicht kann mir jemand von Euch etwas behilflich sein, da ich eher aus Zeiten Pascal und Basic komme.

    Grüsse
    Chris


  • Mod

    Mach mal "-llicensepp.lib" statt "-LIB licensepp.lib". Eventuell musst du auch noch mit "-L" den Pfad angeben, unter dem licensepp.lib gefunden werden kann, je nachdem, wie genau das bei dir installiert ist



  • Hallo,

    gib mal, anstatt -LIB licensepp.lib, -llicensepp an (-l (kleines L) ist der Parameter zur Angabe einer externen Library - außerdem wird die Endung dabei nicht mitangegeben), s.a. Link Options (GCC).


Anmelden zum Antworten