GNU/Linux >> LINUX-Kenntnisse >  >> Linux

C++ Boost:undefinierte Referenz auf boost::system::generic_category()

Sie sollten den libboost_system verlinken Bibliothek. Ich bin mir bei Codeblöcken nicht sicher, aber die g++-Befehlszeilenoption auf Ihrer Plattform wäre

-lboost_system


Abhängig von der Boost-Version kommt libboost-system mit dem Suffix -mt, das die Multithreading-Fähigkeit der Bibliothek anzeigen soll.

Wenn also -lboost_system kann vom Linker nicht gefunden werden, versuchen Sie es mit -lboost_system-mt .


Es ist ein Linker-Problem. Fügen Sie den statischen Bibliothekspfad in Ihr Projekt ein.

Öffnen Sie für Qt Creator die Projektdatei .pro und fügen Sie die folgende Zeile hinzu:

LIBS += -L<path for boost libraries in the system> -lboost_system

In meinem Fall Ubuntu x86_64:

LIBS += -L/usr/lib/x86_64-linux-gnu -lboost_system

Öffnen Sie für Codeblocks Settings->Compiler...->Linker Einstellungen und fügen Sie hinzu:

boost_system

zum Text-Widget Link-Bibliotheken und drücken Sie OK Schaltfläche.


Linux
  1. Geben Sie der Firewall Ihres Linux-Systems einen Sicherheitsschub

  2. Linux c++ Fehler:undefinierter Verweis auf „dlopen“

  3. C++-Fehler:Undefinierter Verweis auf „clock_gettime“ und „clock_settime“

  4. Rückgabewert von x =os.system(..)

  5. undefinierter Verweis auf das Symbol „[email protected]@GLIBC_2.4“

Kali Linux-Systemanforderungen

crt1.o:In Funktion `_start':- undefinierter Verweis auf `main' unter Linux

Verwendung von sqrtf() in C:undefinierter Verweis auf `sqrtf'

Stellen Sie Systemdatum und -zeit mit C++ unter Linux ein

Undefinierter Verweis auf Symbolfehler „_ZN5boost6system15system_categoryEv“.

Installieren von Bibliotheken und Header-Dateien unter Ubuntu Linux für die C/C++-Entwicklung