Bonjour,
j'utilise quotidiennement de nombreux programmes pour toute tâche.
Après examen de tutoriels, livres de programmations et autres ressou rces, je continue de me poser des questions sur le processus de compilation de programmes.
Certes, le fichier sources est traduit en langage machine, certes, pour c e faire il faut utiliser des options -o etc...
Mais existe-t-il réellement un manuel complet (ou ressource informat ique) abordant de façon concrète, claire et en profondeur les poi nts suivants:
- les différentes étapes du processus de compilation, leur util ité, le fonctionnement en détail de celles-ci
- toutes les options possibles, chacune étant expliquée en prof ondeur
- des explications sur l'impact hardware lié à la compilation
- la compilation croisée
- les bonnes pratiques de programmation (exemple: indenter son code et le commenter)
Je vous remercie d'avance pour votre aide.
Bonjour,
j'utilise quotidiennement de nombreux programmes pour toute tâche.
Après examen de tutoriels, livres de programmations et autres ressou rces, je continue de me poser des questions sur le processus de compilation de programmes.
Certes, le fichier sources est traduit en langage machine, certes, pour c e faire il faut utiliser des options -o etc...
Mais existe-t-il réellement un manuel complet (ou ressource informat ique) abordant de façon concrète, claire et en profondeur les poi nts suivants:
- les différentes étapes du processus de compilation, leur util ité, le fonctionnement en détail de celles-ci
- toutes les options possibles, chacune étant expliquée en prof ondeur
- des explications sur l'impact hardware lié à la compilation
- la compilation croisée
- les bonnes pratiques de programmation (exemple: indenter son code et le commenter)
Je vous remercie d'avance pour votre aide.
Bonjour,
j'utilise quotidiennement de nombreux programmes pour toute tâche.
Après examen de tutoriels, livres de programmations et autres ressou rces, je continue de me poser des questions sur le processus de compilation de programmes.
Certes, le fichier sources est traduit en langage machine, certes, pour c e faire il faut utiliser des options -o etc...
Mais existe-t-il réellement un manuel complet (ou ressource informat ique) abordant de façon concrète, claire et en profondeur les poi nts suivants:
- les différentes étapes du processus de compilation, leur util ité, le fonctionnement en détail de celles-ci
- toutes les options possibles, chacune étant expliquée en prof ondeur
- des explications sur l'impact hardware lié à la compilation
- la compilation croisée
- les bonnes pratiques de programmation (exemple: indenter son code et le commenter)
Je vous remercie d'avance pour votre aide.
Bonjour,
pour information, les bonnes pratiques "indenter son code" et
"commenter son code" n'ont strictement rien à voir avec le processus
de compilation des programmes.
Elles n'en présentent pas moins d'intérêt: elles facilitent la bonne
compréhension du code par les humains qui le modifient, ce qui
contribue à diminuer le risque de bugs...
bonnes fêtes
______________
Éric Dégenètais
Henix
http://www.henix.com
http://www.squashtest.org
Le 23 décembre 2015 à 17:43, enae a écrit :Bonjour,
j'utilise quotidiennement de nombreux programmes pour toute tâche.
Après examen de tutoriels, livres de programmations et autres ressources, je continue de me poser des questions sur le processus de compilation de programmes.
Certes, le fichier sources est traduit en langage machine, certes, pour ce faire il faut utiliser des options -o etc...
Mais existe-t-il réellement un manuel complet (ou ressource informatique) abordant de façon concrète, claire et en profondeur les points suivants:
- les différentes étapes du processus de compilation, leur utilité, le fonctionnement en détail de celles-ci
- toutes les options possibles, chacune étant expliquée en profondeur
- des explications sur l'impact hardware lié à la compilation
- la compilation croisée
- les bonnes pratiques de programmation (exemple: indenter son code et le commenter)
Je vous remercie d'avance pour votre aide.
Bonjour,
pour information, les bonnes pratiques "indenter son code" et
"commenter son code" n'ont strictement rien à voir avec le processus
de compilation des programmes.
Elles n'en présentent pas moins d'intérêt: elles facilitent la bonne
compréhension du code par les humains qui le modifient, ce qui
contribue à diminuer le risque de bugs...
bonnes fêtes
______________
Éric Dégenètais
Henix
http://www.henix.com
http://www.squashtest.org
Le 23 décembre 2015 à 17:43, enae <philolilou@free.fr> a écrit :
Bonjour,
j'utilise quotidiennement de nombreux programmes pour toute tâche.
Après examen de tutoriels, livres de programmations et autres ressources, je continue de me poser des questions sur le processus de compilation de programmes.
Certes, le fichier sources est traduit en langage machine, certes, pour ce faire il faut utiliser des options -o etc...
Mais existe-t-il réellement un manuel complet (ou ressource informatique) abordant de façon concrète, claire et en profondeur les points suivants:
- les différentes étapes du processus de compilation, leur utilité, le fonctionnement en détail de celles-ci
- toutes les options possibles, chacune étant expliquée en profondeur
- des explications sur l'impact hardware lié à la compilation
- la compilation croisée
- les bonnes pratiques de programmation (exemple: indenter son code et le commenter)
Je vous remercie d'avance pour votre aide.
Bonjour,
pour information, les bonnes pratiques "indenter son code" et
"commenter son code" n'ont strictement rien à voir avec le processus
de compilation des programmes.
Elles n'en présentent pas moins d'intérêt: elles facilitent la bonne
compréhension du code par les humains qui le modifient, ce qui
contribue à diminuer le risque de bugs...
bonnes fêtes
______________
Éric Dégenètais
Henix
http://www.henix.com
http://www.squashtest.org
Le 23 décembre 2015 à 17:43, enae a écrit :Bonjour,
j'utilise quotidiennement de nombreux programmes pour toute tâche.
Après examen de tutoriels, livres de programmations et autres ressources, je continue de me poser des questions sur le processus de compilation de programmes.
Certes, le fichier sources est traduit en langage machine, certes, pour ce faire il faut utiliser des options -o etc...
Mais existe-t-il réellement un manuel complet (ou ressource informatique) abordant de façon concrète, claire et en profondeur les points suivants:
- les différentes étapes du processus de compilation, leur utilité, le fonctionnement en détail de celles-ci
- toutes les options possibles, chacune étant expliquée en profondeur
- des explications sur l'impact hardware lié à la compilation
- la compilation croisée
- les bonnes pratiques de programmation (exemple: indenter son code et le commenter)
Je vous remercie d'avance pour votre aide.
Après examen de tutoriels, livres de programmations et autres
ressources, je continue de me poser des questions sur le processus de
compilation de programmes.
Certes, le fichier sources est traduit en langage machine, certes,
pour ce faire il faut utiliser des options -o etc...
Mais existe-t-il réellement un manuel complet (ou ressource
informatique) abordant de façon concrète, claire et en profondeur les
points suivants:
- les différentes étapes du processus de compilation, leur utilité, le
fonctionnement en détail de celles-ci
- toutes les options possibles, chacune étant expliquée en profondeur
- des explications sur l'impact hardware lié à la compilation
- la compilation croisée
Après examen de tutoriels, livres de programmations et autres
ressources, je continue de me poser des questions sur le processus de
compilation de programmes.
Certes, le fichier sources est traduit en langage machine, certes,
pour ce faire il faut utiliser des options -o etc...
Mais existe-t-il réellement un manuel complet (ou ressource
informatique) abordant de façon concrète, claire et en profondeur les
points suivants:
- les différentes étapes du processus de compilation, leur utilité, le
fonctionnement en détail de celles-ci
- toutes les options possibles, chacune étant expliquée en profondeur
- des explications sur l'impact hardware lié à la compilation
- la compilation croisée
Après examen de tutoriels, livres de programmations et autres
ressources, je continue de me poser des questions sur le processus de
compilation de programmes.
Certes, le fichier sources est traduit en langage machine, certes,
pour ce faire il faut utiliser des options -o etc...
Mais existe-t-il réellement un manuel complet (ou ressource
informatique) abordant de façon concrète, claire et en profondeur les
points suivants:
- les différentes étapes du processus de compilation, leur utilité, le
fonctionnement en détail de celles-ci
- toutes les options possibles, chacune étant expliquée en profondeur
- des explications sur l'impact hardware lié à la compilation
- la compilation croisée
Il y a aussi la question de la configuration du logiciel (une
première étape de l'installation est souvent de lancer un script,
par exemple ./configure, qui vérifie quels outils sont disponibles
sur le système et génère des fichiers de configuration ad-hoc). Et
la question, très liée à la configuration, de la dépendance de
paquets existants.
Il y a aussi la question de la configuration du logiciel (une
première étape de l'installation est souvent de lancer un script,
par exemple ./configure, qui vérifie quels outils sont disponibles
sur le système et génère des fichiers de configuration ad-hoc). Et
la question, très liée à la configuration, de la dépendance de
paquets existants.
Il y a aussi la question de la configuration du logiciel (une
première étape de l'installation est souvent de lancer un script,
par exemple ./configure, qui vérifie quels outils sont disponibles
sur le système et génère des fichiers de configuration ad-hoc). Et
la question, très liée à la configuration, de la dépendance de
paquets existants.
pour information, les bonnes pratiques "indenter son code" et
"commenter son code" n'ont strictement rien à voir avec le processus
de compilation des programmes.
pour information, les bonnes pratiques "indenter son code" et
"commenter son code" n'ont strictement rien à voir avec le processus
de compilation des programmes.
pour information, les bonnes pratiques "indenter son code" et
"commenter son code" n'ont strictement rien à voir avec le processus
de compilation des programmes.
Bonjour,
- les différentes étapes du processus de compilation, leur utilité, le
fonctionnement en détail de celles-ci
- toutes les options possibles, chacune étant expliquée en profondeur
- des explications sur l'impact hardware lié à la compilation
- la compilation croisée
- les bonnes pratiques de programmation (exemple: indenter son code et
le commenter)
Bonjour,
- les différentes étapes du processus de compilation, leur utilité, le
fonctionnement en détail de celles-ci
- toutes les options possibles, chacune étant expliquée en profondeur
- des explications sur l'impact hardware lié à la compilation
- la compilation croisée
- les bonnes pratiques de programmation (exemple: indenter son code et
le commenter)
Bonjour,
- les différentes étapes du processus de compilation, leur utilité, le
fonctionnement en détail de celles-ci
- toutes les options possibles, chacune étant expliquée en profondeur
- des explications sur l'impact hardware lié à la compilation
- la compilation croisée
- les bonnes pratiques de programmation (exemple: indenter son code et
le commenter)
On 12/23/2015 05:43 PM, enae wrote:
[...]
Après examen de tutoriels, livres de programmations et autres
ressources, je continue de me poser des questions sur le processus de
compilation de programmes.
Certes, le fichier sources est traduit en langage machine, certes,
pour ce faire il faut utiliser des options -o etc...
Mais existe-t-il réellement un manuel complet (ou ressource
informatique) abordant de façon concrète, claire et en profondeur les
points suivants:
- les différentes étapes du processus de compilation, leur utilité,
le fonctionnement en détail de celles-ci
- toutes les options possibles, chacune étant expliquée en profondeur
- des explications sur l'impact hardware lié à la compilation
- la compilation croisée
En principe, il ne peut pas exister de resources universelles
décrivant comment compiler un programme, pour la bonne raison que d'un
compilateur à l'autre, et d'un language à l'autre, le processus de
compilation est très différent.
Concrètement, compiler un programme dont le code source est codé en C
et un programme dont le code source est codé en Ocaml ou en Common
Lisp est vraiment très différent, notamment parce que dans le détail
"compiler" veut dire des choses différentes, et qu'il y a peut-être
différentes façons de compiler (le développeur ou le contributeur
occasionnel de patch va compiler avec des options de déboguage;
l'utilisateur et le packageur -celui qui fait un paquet Debian-
préfère compiler avec des options d'optimisations).
D'autre part, un logiciel libre suffisamment complexe utilisera
souvent ce qu'on peut appeler pompeusement des techniques de
méta-programmation: une partie du code source en C (par exemple)
serait alors générée. Par exemple le compilateur GCC a actuellement
plus d'une douzaine de générateurs spécialisés de code C++ qui
genèrent une petite partie du compilateur, la grande majorité étant du
C++; et certains de ses generateurs (pour GCC, gengtype par exemple)
sont très spécifiques à l'application.
La plupart des logiciels libres ont des instructions de compilation,
souvent en anglais techniques (donc assez lisible), par exemple dans
un fichier README ou INSTALL.
J'aurais tendance à suggérer de commencer à compiler un petit logiciel
libre; ainsi il est plus simple de compiler GNU bash ou GNU coreutils
que de compiler le compilateur GCC ou le noyau Linux.
Il y a aussi la question de la configuration du logiciel (une
première étape de l'installation est souvent de lancer un script, par
exemple ./configure, qui vérifie quels outils sont disponibles sur le
système et génère des fichiers de configuration ad-hoc). Et la
question, très liée à la configuration, de la dépendance de paquets
existants.
Si on veut viser la généralité la plus forte, ces thématiques sont
encore des sujets de recherche académiques (et on peut faire une thèse
de doctorat, y compris en France, sur ces questions).
Bonne année à tous!
On 12/23/2015 05:43 PM, enae wrote:
[...]
Après examen de tutoriels, livres de programmations et autres
ressources, je continue de me poser des questions sur le processus de
compilation de programmes.
Certes, le fichier sources est traduit en langage machine, certes,
pour ce faire il faut utiliser des options -o etc...
Mais existe-t-il réellement un manuel complet (ou ressource
informatique) abordant de façon concrète, claire et en profondeur les
points suivants:
- les différentes étapes du processus de compilation, leur utilité,
le fonctionnement en détail de celles-ci
- toutes les options possibles, chacune étant expliquée en profondeur
- des explications sur l'impact hardware lié à la compilation
- la compilation croisée
En principe, il ne peut pas exister de resources universelles
décrivant comment compiler un programme, pour la bonne raison que d'un
compilateur à l'autre, et d'un language à l'autre, le processus de
compilation est très différent.
Concrètement, compiler un programme dont le code source est codé en C
et un programme dont le code source est codé en Ocaml ou en Common
Lisp est vraiment très différent, notamment parce que dans le détail
"compiler" veut dire des choses différentes, et qu'il y a peut-être
différentes façons de compiler (le développeur ou le contributeur
occasionnel de patch va compiler avec des options de déboguage;
l'utilisateur et le packageur -celui qui fait un paquet Debian-
préfère compiler avec des options d'optimisations).
D'autre part, un logiciel libre suffisamment complexe utilisera
souvent ce qu'on peut appeler pompeusement des techniques de
méta-programmation: une partie du code source en C (par exemple)
serait alors générée. Par exemple le compilateur GCC a actuellement
plus d'une douzaine de générateurs spécialisés de code C++ qui
genèrent une petite partie du compilateur, la grande majorité étant du
C++; et certains de ses generateurs (pour GCC, gengtype par exemple)
sont très spécifiques à l'application.
La plupart des logiciels libres ont des instructions de compilation,
souvent en anglais techniques (donc assez lisible), par exemple dans
un fichier README ou INSTALL.
J'aurais tendance à suggérer de commencer à compiler un petit logiciel
libre; ainsi il est plus simple de compiler GNU bash ou GNU coreutils
que de compiler le compilateur GCC ou le noyau Linux.
Il y a aussi la question de la configuration du logiciel (une
première étape de l'installation est souvent de lancer un script, par
exemple ./configure, qui vérifie quels outils sont disponibles sur le
système et génère des fichiers de configuration ad-hoc). Et la
question, très liée à la configuration, de la dépendance de paquets
existants.
Si on veut viser la généralité la plus forte, ces thématiques sont
encore des sujets de recherche académiques (et on peut faire une thèse
de doctorat, y compris en France, sur ces questions).
Bonne année à tous!
On 12/23/2015 05:43 PM, enae wrote:
[...]
Après examen de tutoriels, livres de programmations et autres
ressources, je continue de me poser des questions sur le processus de
compilation de programmes.
Certes, le fichier sources est traduit en langage machine, certes,
pour ce faire il faut utiliser des options -o etc...
Mais existe-t-il réellement un manuel complet (ou ressource
informatique) abordant de façon concrète, claire et en profondeur les
points suivants:
- les différentes étapes du processus de compilation, leur utilité,
le fonctionnement en détail de celles-ci
- toutes les options possibles, chacune étant expliquée en profondeur
- des explications sur l'impact hardware lié à la compilation
- la compilation croisée
En principe, il ne peut pas exister de resources universelles
décrivant comment compiler un programme, pour la bonne raison que d'un
compilateur à l'autre, et d'un language à l'autre, le processus de
compilation est très différent.
Concrètement, compiler un programme dont le code source est codé en C
et un programme dont le code source est codé en Ocaml ou en Common
Lisp est vraiment très différent, notamment parce que dans le détail
"compiler" veut dire des choses différentes, et qu'il y a peut-être
différentes façons de compiler (le développeur ou le contributeur
occasionnel de patch va compiler avec des options de déboguage;
l'utilisateur et le packageur -celui qui fait un paquet Debian-
préfère compiler avec des options d'optimisations).
D'autre part, un logiciel libre suffisamment complexe utilisera
souvent ce qu'on peut appeler pompeusement des techniques de
méta-programmation: une partie du code source en C (par exemple)
serait alors générée. Par exemple le compilateur GCC a actuellement
plus d'une douzaine de générateurs spécialisés de code C++ qui
genèrent une petite partie du compilateur, la grande majorité étant du
C++; et certains de ses generateurs (pour GCC, gengtype par exemple)
sont très spécifiques à l'application.
La plupart des logiciels libres ont des instructions de compilation,
souvent en anglais techniques (donc assez lisible), par exemple dans
un fichier README ou INSTALL.
J'aurais tendance à suggérer de commencer à compiler un petit logiciel
libre; ainsi il est plus simple de compiler GNU bash ou GNU coreutils
que de compiler le compilateur GCC ou le noyau Linux.
Il y a aussi la question de la configuration du logiciel (une
première étape de l'installation est souvent de lancer un script, par
exemple ./configure, qui vérifie quels outils sont disponibles sur le
système et génère des fichiers de configuration ad-hoc). Et la
question, très liée à la configuration, de la dépendance de paquets
existants.
Si on veut viser la généralité la plus forte, ces thématiques sont
encore des sujets de recherche académiques (et on peut faire une thèse
de doctorat, y compris en France, sur ces questions).
Bonne année à tous!
J'aurai une petite question complémentaire:
vu que les compilateurs génèrent du "code machine", j'aurai ten dance Ã
dire que les langages compilés sont syntaxiquement de "haut niveau" par
opposition à un langage type "assembleur". Suis-je dans le vrai?
J'aurai une petite question complémentaire:
vu que les compilateurs génèrent du "code machine", j'aurai ten dance Ã
dire que les langages compilés sont syntaxiquement de "haut niveau" par
opposition à un langage type "assembleur". Suis-je dans le vrai?
J'aurai une petite question complémentaire:
vu que les compilateurs génèrent du "code machine", j'aurai ten dance Ã
dire que les langages compilés sont syntaxiquement de "haut niveau" par
opposition à un langage type "assembleur". Suis-je dans le vrai?
Bonjour,
J'aurai une petite question complémentaire:
vu que les compilateurs génèrent du "code machine", j'aurai tendance à
dire que les langages compilés sont syntaxiquement de "haut niveau"
par opposition à un langage type "assembleur". Suis-je dans le vrai?
Bonjour,
J'aurai une petite question complémentaire:
vu que les compilateurs génèrent du "code machine", j'aurai tendance à
dire que les langages compilés sont syntaxiquement de "haut niveau"
par opposition à un langage type "assembleur". Suis-je dans le vrai?
Bonjour,
J'aurai une petite question complémentaire:
vu que les compilateurs génèrent du "code machine", j'aurai tendance à
dire que les langages compilés sont syntaxiquement de "haut niveau"
par opposition à un langage type "assembleur". Suis-je dans le vrai?
L'assembleur n'est quasiment plus utilisé (sauf peut-être dans l'embarqué de
bas niveau, sur des petits microcontroleurs 8 bits avec quelques kilo-octets
de mémoire).
Un compilateur optimiseur génère aujourdhui un code plus rapide
que n'est capable de coder un developpeur humain experimenté en assembleur.
Et de nos jours des processeurs de marques différentes (par exemple AMD et
Intel) executent le même jeu d'instruction différemment. Concrètement un
compilateur optimiseur va générer du code un peu différent pour un AMD
L'assembleur n'est quasiment plus utilisé (sauf peut-être dans l'embarqué de
bas niveau, sur des petits microcontroleurs 8 bits avec quelques kilo-octets
de mémoire).
Un compilateur optimiseur génère aujourdhui un code plus rapide
que n'est capable de coder un developpeur humain experimenté en assembleur.
Et de nos jours des processeurs de marques différentes (par exemple AMD et
Intel) executent le même jeu d'instruction différemment. Concrètement un
compilateur optimiseur va générer du code un peu différent pour un AMD
L'assembleur n'est quasiment plus utilisé (sauf peut-être dans l'embarqué de
bas niveau, sur des petits microcontroleurs 8 bits avec quelques kilo-octets
de mémoire).
Un compilateur optimiseur génère aujourdhui un code plus rapide
que n'est capable de coder un developpeur humain experimenté en assembleur.
Et de nos jours des processeurs de marques différentes (par exemple AMD et
Intel) executent le même jeu d'instruction différemment. Concrètement un
compilateur optimiseur va générer du code un peu différent pour un AMD