GNU/Linux >> Belajar Linux >  >> Linux

C++ Boost:referensi tidak terdefinisi untuk boost::system::generic_category()

Anda harus menautkan di libboost_system Perpustakaan. Saya tidak yakin tentang pemblokiran kode, tetapi opsi baris perintah g++ di platform Anda adalah

-lboost_system


Bergantung pada versi boost, libboost-system hadir dengan akhiran -mt yang menunjukkan kemampuan multithreading library.

Jadi jika -lboost_system tidak dapat ditemukan oleh linker coba -lboost_system-mt .


Ini masalah penghubung. Sertakan jalur pustaka statis ke proyek Anda.

Untuk Qt Creator buka file proyek .pro dan tambahkan baris berikut:

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

Dalam kasus saya Ubuntu x86_64:

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

Untuk Codeblock, buka Settings->Compiler...->Linker tab setelan dan tambahkan:

boost_system

ke widget teks Tautkan pustaka dan tekan OK tombol.


Linux
  1. Perpustakaan Grafis 3d Linux?

  2. Apakah Mungkin Memiliki Perpustakaan 32 Bit Diinstal Pada Sistem 64 Bit?

  3. Kesalahan C++:referensi tidak terdefinisi ke 'clock_gettime' dan 'clock_settime'

  1. crt1.o:Dalam fungsi `_start':- referensi tidak terdefinisi ke `main' di Linux

  2. Mengembalikan nilai x =os.system(..)

  3. referensi yang tidak ditentukan untuk simbol '[email protected]@GLIBC_2.4'

  1. Berikan firewall sistem Linux Anda peningkatan keamanan

  2. referensi tidak terdefinisi untuk kesalahan simbol '_ZN5boost6system15system_categoryEv'

  3. Menginstal pustaka dan file header di bawah Ubuntu Linux untuk pengembangan C/C++