SoloCodigo
Sistemas Operativos => GNU/Linux => Mensaje iniciado por: az00smx en Sábado 13 de Junio de 2009, 03:58
-
Hola de nuevo, aqui escribo unas dudas que he tenido desde hace tiempo, por ejemplo hago un programa con una libreria como SDL, compilo este archivo y se crea un archivo nuevo con la forma de "./nombresalida" exactamente que es este archivo, y la otra, para correr ese programa en otra maquina con linux, pero que carece de esa libreria como le hago (si es que hay forma), o acaso funcionarai tomando ese archivo "./nombresalida" copiarlo pegarlo en la otra maquina y correrlo a ver que pasa, o como es el metodo para hacer que un programa corra en otra maquina sin usar las librerias, o hacer un executable para windows, por su atencion gracias.
-
compilo este archivo y se crea un archivo nuevo con la forma de "./nombresalida" exactamente que es este archivo
Supondré que estás preguntando, porque si no no entendería el párrafo :lol: Ese fichero es el ejecutable :P (el equivalente al .exe en Windows). Linux no usa extensiones para saber qué tipo de fichero se trata, aunque si lo tiene lo usará ^_^ En estas pequeñas cosas es donde se nota la diferencia entre un SO bien hecho y una cutrería.
para correr ese programa en otra maquina con linux, pero que carece de esa libreria como le hago (si es que hay forma)
Tienes dos opciones:
- Instalar la librería en el equipo en que vayas a ejecutarlo; poner esta librería como dependencia obligatoria
- Enlazar la librería al programa de manera estática, de manera que la librería esté incluída en el ejecutable y no vaya aparte. Ojo, esto puede incrementar el tamaño del fichero de manera muy significativa. Quien avisa no es traidor :D
o acaso funcionarai tomando ese archivo "./nombresalida" copiarlo pegarlo en la otra maquina y correrlo a ver que pasa
Si el sistema tiene la librería, funcionará. Si la librería está enlazada estáticamente, funcionará. Si no, nada.
o como es el metodo para hacer que un programa corra en otra maquina sin usar las librerias
:blink: Eso no puede ser, es código que usa tu programa: no librería, no funciones de la librería. Si le quitas todas las funciones que llamas de la librería, funcionará sin librería.
o hacer un executable para windows
Primero una aclaración: no importa que lo ejecutes en Windows o Linux: sin librería, nada de nada. Dicho esto, para compilar para Windows desde gcc necesitas las librerías de Windows y especificarlo como plataforma destino (target platform).