Я столкнулся с проблемой компиляции при попытке использовать mysql ++. H в моей программе на C ++ на платформе ASUS Tinker Board.
Включения выглядят так:
#include <mysql++.h>
#include <stdlib.h>
Выполнена команда G ++это:
g++ -I/usr/include/mysql -I/usr/include/mysql++ -L/usr/lib -lmysqlpp -lmysqlclient mysql.c -o mysql
Вывод содержит следующее:
In file included from /usr/include/mysql++/sql_buffer.h:31:0,
from /usr/include/mysql++/stadapter.h:35,
from /usr/include/mysql++/qparms.h:35,
from /usr/include/mysql++/query.h:35,
from /usr/include/mysql++/mysql++.h:58,
from mysql.c:1:
/usr/include/mysql++/refcounted.h: In constructor ‘mysqlpp::RefCountedPointer<T, Destroyer>::RefCountedPointer(T*)’:
/usr/include/mysql++/refcounted.h:104:8: warning: ‘template<class> class std::auto_ptr’ is deprecated [-Wdeprecated-declarations]
std::auto_ptr<T> exception_guard(counted_);
^~~~~~~~
In file included from /usr/include/c++/6/memory:81:0,
from /usr/include/mysql++/refcounted.h:31,
from /usr/include/mysql++/sql_buffer.h:31,
from /usr/include/mysql++/stadapter.h:35,
from /usr/include/mysql++/qparms.h:35,
from /usr/include/mysql++/query.h:35,
from /usr/include/mysql++/mysql++.h:58,
from mysql.c:1:
/usr/include/c++/6/bits/unique_ptr.h:49:28: note: declared here
template<typename> class auto_ptr;
^~~~~~~~
Я попытался изменить файл "/refcounts.h", изменив "std ::"auto_ptr "by" std :: unique_ptr ", он успешно компилируется, но я получаю" Ошибка сегментации "при попытке запустить мою программу.
Пожалуйста, помогите, спасибо.