Red de conocimiento informático - Problemas con los teléfonos móviles - Se produjo un error al cargar la biblioteca de préstamo de Python

Se produjo un error al cargar la biblioteca de préstamo de Python

$ python -V

Python: Error al cargar la biblioteca compartida: libpython3.6m.so.1.0: No se puede abrir el archivo de objeto compartido: No existe tal archivo o directorio

Ldd es una biblioteca dinámica Lista de dependencias:

$ ldd/usr/local/bin/python 3.6 Linux-vdso . 0 =/usr/lib 64/libpthread entonces .0(0x 0007 Fe 1400 ff 000)libdl entonces 2 =/usr/lib 64/

Buscar biblioteca dinámica:

< p. >$ buscar/-nombre 'libpython 3.6m entonces. >

(2) Agregue el directorio de la ruta del archivo libpython3.6m.so.1.0 a /etc/ld.so.conf:

En $vim /etc/ld.so.conf file Agregue una nueva línea al final de /usr/local/lib/

(3) Guarde para que la modificación sea efectiva:

$ ldconfig

Ps : Echemos un vistazo a cómo usar bibliotecas dinámicas en Python.

Primero, cree una biblioteca dinámica simple.

Generar dll mediante programación:gcc-fpic-O2-shared dll.

Archivo C: dll.c es el siguiente

# include stdio .hstruct param { int a; int b; float int arr[3]; void print 0(struct param arg){ printf(" en print:\ n "); printf("a: %d\n ", arg . a); ); printf("c: %c\n ", arg . c); printf("f: %f\n ", arg . f); .arr [0], arg.arr[1], arg. arr[2]);} void print 2(struct param * arg){ printf(" in print 2:\ n "); d\ n ", arg-a); printf ( "b: %d\n ", arg-b); printf ( "c: %c\n ", arg-c); printf ( "f: %f\ n " , arg-f); printf("arr: %d %d %d\n ", arg-arr[0], arg-arr[1], arg-arr[2]);} void print 3( int a ){ printf(" in print 3:\ n "); printf("a: %d\n ", a);}

Python define la estructura pasada a la biblioteca dinámica.

de tipos import * class SS(estructura):_ campos_ =[(" a ", c _ int), (" b ", c _ int), (" c ", c _ char ) , (" f ", c _ float), ( " arr ", c _.

Un ejemplo de Python usando dll.so

# Cargar biblioteca dinámica filename = "/ home /primax/desktop/work/test/python/dll entonces " lib = cdll . loadlibrary(nombre de archivo)# Definir variable param = ss()# Asignar parámetro. a = 1 parámetro. b = 2 parámetro. c = ' a '. param . f = 1.2345 param . arr[0]= 0 arr[1]= 1 arr[2]. Análisis El artículo sobre el error de la biblioteca dinámica de Python m.so.1.0 está aquí. Para obtener más información sobre Python m.so.1.0, busque los artículos anteriores en este sitio o continúe explorando los siguientes artículos relacionados. ¡Este sitio web en el futuro! /p>

Recursos relacionados: análisis de biblioteca dinámica de Python m. Error 1.0 _ libpython 3.6m.