Perbarui :
Tampaknya Anda perlu memanggil mysql_library_init() sebelum mysql_init() :
Mengenai pertanyaan awal Anda, libmysqlclient_r.so sebenarnya adalah tautan simbolis ke libmysql.so . Anda dapat mengubah libmysql/CMakeLists.txt untuk menghasilkan perpustakaan statis (libmysql.a ) sebagai gantinya dengan menghapus SHARED kata kunci dari baris berikut:
ADD_LIBRARY(libmysql SHARED ${CLIENT_SOURCES} libmysql.def)
Namun, saya akan merekomendasikan (1) mencoba menjalankan kode yang sama tanpa menggunakan utas dan melihat apakah masalah tetap ada, (2) membangun dan menggunakan versi debug perpustakaan:
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug
make
Dengan cara ini Anda dapat menyelidiki masalah lebih detail.