#1 Le 14/11/2016, à 13:33
- tahri
Exécution d'un programme C en utilisant make et Makefile
Bonjour tout le monde ,
je suis entrain d'exécuter un "hello world" avec makefile et voici le message d'erreur affiché en tapant make : ce programme est construit pour 86-64 pc linux gnu, signalez les anomalies à <bug-make@gnu.org>. Mon architecture et le fichier d'installation iso d'ubuntu sont en 64 bits.
Merci d'avance de me venir en aide pour la résolution de cette erreur.
Hors ligne
#2 Le 14/11/2016, à 13:47
- Nasman
Re : Exécution d'un programme C en utilisant make et Makefile
Peux tu poster le contenu de ces fichiers (ils ne doivent pas être trop gros si c'est pour faire un simple "hello world")
Poste aussi le résultat de
uname -a
Dernière modification par Nasman (Le 14/11/2016, à 13:47)
PC fixe sous Bionic 64 bits et portable avec Focal 64 bits
Hors ligne
#3 Le 14/11/2016, à 14:01
- tahri
Re : Exécution d'un programme C en utilisant make et Makefile
voici le résultat de la commande uname : http://pix.toile-libre.org/upload/origi … 128366.png
le Makefile : http://pix.toile-libre.org/upload/origi … 128437.png
et enfin le hello.c : http://pix.toile-libre.org/upload/origi … 128461.png
Hors ligne
#4 Le 14/11/2016, à 14:06
- cqfd93
Re : Exécution d'un programme C en utilisant make et Makefile
Modération
Bonjour,
Les retours de commandes et contenus de fichiers texte sont à donner sous forme de texte entre balises code (explications ici), pas sous forme d'image. C'est plus lisible, plus exploitable et surtout, beaucoup moins lourd à stocker et télécharger. Donc je te conseille de remplacer tes 3 images par le texte. Merci.
− cqfd93 −
Hors ligne
#5 Le 14/11/2016, à 14:12
- tahri
Re : Exécution d'un programme C en utilisant make et Makefile
Je te remercie pour le conseil.
Voici donc le Makefile :
# If KERNELRELEASE is defined, we've been invoked from the
# kernel build system and can use its language.
ifneq ($(KERNELRELEASE),)
objm
:= hello.o
# Otherwise we were called directly from the command
# line; invoke the kernel build system.
else
KERNELDIR ?= /lib/modules/$(shell uname r)/
build
PWD := $(shell pwd)
default:
$(MAKE) C
$(KERNELDIR) M=$(PWD) modules
endif
Le hello.c
#include <linux/init.h>
#include <linux/module.h>
MODULE_LICENSE("Dual BSD/GPL");
static int hello_init(void)
{
printk(KERN_ALERT "Hello, world\n");
return 0;
}
static void hello_exit(void)
{
printk(KERN_ALERT "Goodbye, cruel world\n");
}
module_init(hello_init);
module_exit(hello_exit);
Le résultat de la commande :
root@tahri-PC:/home/tahri/Bureau/TP# uname -a
Linux tahri-PC 4.4.0-31-generic #50~14.04.1-Ubuntu SMP Wed Jul 13 01:07:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
Dernière modification par tahri (Le 14/11/2016, à 14:28)
Hors ligne
#6 Le 14/11/2016, à 14:17
- cqfd93
Re : Exécution d'un programme C en utilisant make et Makefile
Nettement mieux ! Tu pouvais même remplacer les images du message 3 (en choisissant "Modifier")
Tu as oublié le retour de :
uname -a
− cqfd93 −
Hors ligne