Archive for 11 noviembre 2009

h1

Error: undefined reference to `sqlite3_open’

11/11/2009

Si incluyendo funciones de la librería sqlite3 se producen errores como los siguientes en Eclipse u otro IDE:

Description    Resource    Path    Location    Type
undefined reference to `sqlite3_open'    proyecto.cpp    /proyecto/src    line 139    C/C++ Problem

Description    Resource    Path    Location    Type
undefined reference to `sqlite3_exec'    proyecto.cpp    /proyecto/src    line 140    C/C++ Problem

Description    Resource    Path    Location    Type
undefined reference to `sqlite3_close'    proyecto.cpp    /proyecto/src    line 141    C/C++ Problem

Se solucionan incluyendo en el linker la librería “sqlite3”. En el caso de Eclipse:

Propiedades del proyecto > C/C++ Build > Settings > GCC C++ Linker > Libraries > "Libraries (-l)"

Añadir el valor “sqlite3“.

h1

Error compilando: Type undefined reference to boost::filesystem::detail::status_api

11/11/2009

Si al compilar un proyecto c++ que utilice las librerías Boost en Eclipse se produce el siguiente error:

Type undefined reference to boost::filesystem::detail::status_api

o de forma extendida:
Description Resource Path Location Type
undefined reference to `boost::filesystem::detail::status_api(std::basic_string<char, std::char_traits, std::allocator > const&, int&)' Indect3 line 279, external location: /usr/include/boost/filesystem/operations.hpp C/C++ Problem

Se solucionan incluyendo en el linker la librería “boost_filesystem″. En el caso de Eclipse:

Para solucionarlo es necesario ir al siguiente menú:
Propiedades del proyecto > C/C++ Build > Settings > GCC C++ Linker > Libraries > "Libraries (-l)"
y añadir esta referencia:
boost_filesystem

Fuente: Ferdy Christant