0

Hola estoy intentando crear una conexion con mysql desde c++, total que tengo este codigo que es muy simple:

#include "mysqlx/xdevapi.h"
#include <iostream>



int main (void){

    std::cout<<"hola";

    mysqlx::Session from_options("localhost", 123, "root", "1234", "prueba");

    from_options.close();
}

Sin embargo me da un error que no entiendo porque,y es el siguiente :

/tmp/cc6JwaKE.o: In function `mysqlx::string::string(char const*)':
mio.cpp:(.text._ZN6mysqlx6stringC2EPKc[_ZN6mysqlx6stringC5EPKc]+0x75): undefined reference to `mysqlx::string::Impl::from_utf8(mysqlx::string&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/tmp/cc6JwaKE.o: In function `mysqlx::string::string(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
mio.cpp:(.text._ZN6mysqlx6stringC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE[_ZN6mysqlx6stringC5ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE]+0x2c): undefined reference to `mysqlx::string::Impl::from_utf8(mysqlx::string&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/tmp/cc6JwaKE.o: In function `mysqlx::string::operator std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >() const':
mio.cpp:(.text._ZNK6mysqlx6stringcvNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEv[_ZNK6mysqlx6stringcvNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEv]+0x2e): undefined reference to `mysqlx::string::Impl::to_utf8[abi:cxx11](mysqlx::string const&)'
/tmp/cc6JwaKE.o: In function `void mysqlx::internal::Settings_detail<mysqlx::internal::Settings_traits>::set<true, mysqlx::SessionOption, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, mysqlx::SessionOption, unsigned int&, mysqlx::SessionOption, mysqlx::string const&>(mysqlx::SessionOption, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, mysqlx::SessionOption&&, unsigned int&, mysqlx::SessionOption&&, mysqlx::string const&)':
mio.cpp:(.text._ZN6mysqlx8internal15Settings_detailINS0_15Settings_traitsEE3setILb1ENS_13SessionOptionEJRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_RjS5_RKNS_6stringEEEEvT0_DpOT1_[_ZN6mysqlx8internal15Settings_detailINS0_15Settings_traitsEE3setILb1ENS_13SessionOptionEJRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_RjS5_RKNS_6stringEEEEvT0_DpOT1_]+0xb8): undefined reference to `mysqlx::internal::Settings_detail<mysqlx::internal::Settings_traits>::do_set(std::__cxx11::list<std::pair<int, mysqlx::common::Value>, std::allocator<std::pair<int, mysqlx::common::Value> > >&&)'
/tmp/cc6JwaKE.o: In function `void mysqlx::internal::Settings_detail<mysqlx::internal::Settings_traits>::set<true, mysqlx::SessionOption, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(mysqlx::SessionOption, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&)':
mio.cpp:(.text._ZN6mysqlx8internal15Settings_detailINS0_15Settings_traitsEE3setILb1ENS_13SessionOptionEJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEEvT0_DpOT1_[_ZN6mysqlx8internal15Settings_detailINS0_15Settings_traitsEE3setILb1ENS_13SessionOptionEJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEEvT0_DpOT1_]+0x52): undefined reference to `mysqlx::internal::Settings_detail<mysqlx::internal::Settings_traits>::do_set(std::__cxx11::list<std::pair<int, mysqlx::common::Value>, std::allocator<std::pair<int, mysqlx::common::Value> > >&&)'
/tmp/cc6JwaKE.o: In function `void mysqlx::internal::Settings_detail<mysqlx::internal::Settings_traits>::set<true, mysqlx::SessionOption, mysqlx::string const&>(mysqlx::SessionOption, mysqlx::string const&)':
mio.cpp:(.text._ZN6mysqlx8internal15Settings_detailINS0_15Settings_traitsEE3setILb1ENS_13SessionOptionEJRKNS_6stringEEEEvT0_DpOT1_[_ZN6mysqlx8internal15Settings_detailINS0_15Settings_traitsEE3setILb1ENS_13SessionOptionEJRKNS_6stringEEEEvT0_DpOT1_]+0x52): undefined reference to `mysqlx::internal::Settings_detail<mysqlx::internal::Settings_traits>::do_set(std::__cxx11::list<std::pair<int, mysqlx::common::Value>, std::allocator<std::pair<int, mysqlx::common::Value> > >&&)'
collect2: error: ld returned 1 exit status

Lo que tengo a nivel de directorios, es el fichero mio.cpp que es el codigo del principio en el directorio "include" de los ficheros de connector/c++8.0 y estoy compilando con el siguiente comando :

 g++ -std=c++11 -L ../lib64/  mio.cpp -lmysqlcppconn8 -o app

Cualquier consejo estaria agradecido, ya que no he entendido del todo la documentacion de oracle para esta api....

k1k4ss0
  • 659
  • 4
  • 12

0 Answers0