que es un fichero .o en c++?

Iniciado por Borito30, 26 Febrero 2017, 16:19 PM

0 Miembros y 1 Visitante están viendo este tema.

Borito30

Para que sirve y que es un fichero .o? Se utilizan mucho para linkear pero desconozco que son como funcionan y para que se utilizan  :huh:
Estoy en contra del foro libre y la Sección de juegos y consolas (distraen al personal)

ivancea96

https://es.wikipedia.org/wiki/C%C3%B3digo_objeto

Es un archivo con el código compilado, no tiene mucho más (relevante, quiero decir).
Una vez tienes el código fuente compilado en 1 o más ficheros objeto, en linker se encarga de juntar todos esos compilados en un ejecutable final (.exe en caso de Windows).


Cuando trabajas con varios archivos de código, normalmente se compila cada uno por separado a su propio .o. Luego, todos esos .o se enlazan en un ejecutable. Eso permite , por ejemplo, actualizar el main.cpp sin necesidad de recompilar todos los otros archivos.

Borito30

#2
Cita de: ivancea96 en 26 Febrero 2017, 16:29 PM
https://es.wikipedia.org/wiki/C%C3%B3digo_objeto

Es un archivo con el código compilado, no tiene mucho más (relevante, quiero decir).
Una vez tienes el código fuente compilado en 1 o más ficheros objeto, en linker se encarga de juntar todos esos compilados en un ejecutable final (.exe en caso de Windows).


Cuando trabajas con varios archivos de código, normalmente se compila cada uno por separado a su propio .o. Luego, todos esos .o se enlazan en un ejecutable. Eso permite , por ejemplo, actualizar el main.cpp sin necesidad de recompilar todos los otros archivos.

Una pregunta la compilacion de un ejecutable se podría resumir de la siguiente manera:


Como me mostrastes en tu enlace en la fase 3 enlazaría los ficheros objeto al ejecutable creo.
Estoy en contra del foro libre y la Sección de juegos y consolas (distraen al personal)

ivancea96

Sí. Y bueno, también las librerías (que no dejan de ser ficheros objeto muchas de ellas)