Parece que no puedo importar ninguno de los módulos básicos ubicados en el directorio "lib-dynload". Están todos allí, pero obtengo el error: "ImportError: No module named X"
cuando intento importarlos.Python compilado de forma cruzada no puede encontrar módulos básicos (matemática, operador, etc.)
Revisé mi sys.path
e incluye el directorio donde se encuentran todos estos módulos y mi variable de entorno PYTHONHOME está configurada correctamente. Estoy un poco perdido en cuanto a cuál podría ser el problema. Información de fondo: se compila de forma cruzada desde el origen de Python 2.6.6 y se instala en una placa de Linux embebida de ARM con Angstrom.
Tenía python allí antes, había intentado hornearlo en la imagen pero le faltaban muchas cosas. Terminé haciendo todo lo posible para limpiar el árbol de directorios de todo lo que tuviera que ver con el pitón anterior antes de cargarlo en mi versión compilada cruzada.
Un strace de un simple script que simplemente intenta importar math
: http://pastebin.com/3XgJ3nPR
¿Sabía qué bandera o variable establecer para compilar de esta manera? Puedo verificar los resultados de make/setup/configure. – Jon
No - cuando compilo Python en Ubuntu para i386, decide automáticamente que es capaz de cargar objetos compartidos. Tal vez comprueba la llamada al sistema 'dlopen()'? Sí, parece que sí. Actualizaré mi respuesta. –
Lo comprueba en un par de lugares. Partes relevantes: http://pastebin.com/UQ2ZsteE. El resultado es fracaso. Este debe ser el problema, gracias. Veré cómo resolver esto, ¿alguna recomendación? FYI: Decidí cambiar los núcleos y la cadena de herramientas correspondiente recientemente, la cadena de herramientas anterior compiló python sin ningún problema. – Jon