Pregunta

Estoy usando el siguiente código para probar la biblioteca RE2 de Google

int main()
{
  int r = RE2::FullMatch("hello", "h.*o");
  cout <<" match = " << r << endl;
  return 0;
}

Estoy compuesto usando el siguiente comando -

g++ -lre2 -o retest retest.cc

Se está compilando bien, pero cuando estoy tratando de correr con./Retest está lanzando el siguiente error -

error while loading shared libraries: libre2.so.0: cannot open shared object file: No such file or directory

He comprobado y Libre2.so.0 La biblioteca existe en el directorio de usuario/local/lib y re2/obj/so. Entonces, ¿por qué se acerca este error, ¿olvido algunos detalles para agregar?

¿Fue útil?

Solución

Correr sudo ldconfig Hizo el truco.

Otros consejos

Escolta clásica:

g++ -o retest retest.cc -lre2 

Las bibliotecas deberían ser la última

Editar Para ser honesto, me sorprende la ausencia de errores de enlace. Lo conservaré en caso de que te hayas perdido algo de información en la pregunta.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top