linux - know - Enlace de la biblioteca de 32 bits al programa de 64 bits
linux check 32 64 bits (3)
Tengo una biblioteca de solo bits binarios de 32 bits y tengo que generar un programa de 64 bits que lo use. ¿Hay alguna forma de ajustarlo o convertirlo, de modo que se pueda utilizar con un programa de 64 bits?
Es posible, pero no sin una magia seria detrás de las escenas y no le gustará la respuesta. Emule una CPU de 32 bits (no estoy bromeando) o cambie el proceso principal a 32 bits. Sin embargo, la emulación puede ser lenta.
Esta es una prueba de concepto de la técnica.
Luego, mantenga una tabla de todos los accesos de memoria hacia y desde la biblioteca de 32 bits y manténgalos sincronizados. Es muy difícil llegar a una integridad teórica, pero algo viable debería ser bastante fácil, pero muy tedioso.
En la mayoría de los casos, creo que dos procesos y luego el IPC entre los dos pueden ser los más fáciles, como se sugiere en otros casos.
No. No puede enlazar directamente a un código de 32 bits dentro de un programa de 64 bits.
La mejor opción es compilar un programa de 32 bits (independiente) que puede ejecutarse en su plataforma de 64 bits (usando ia32) , y luego usar una forma de comunicación entre procesos para comunicarse con él desde su programa de 64 bits.
Para ver un ejemplo del uso de IPC para ejecutar complementos de 32 bits a partir de un código de 64 bits, consulte el código abierto NSPluginWrapper .