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
Ese fichero es el ejecutable
(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
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
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).