Comment faire de la programmation C++ depuis fedora ??
U5er Messages postés 2 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Je suis passé il y a un an à Fedora (Linux) pour remplacer Windows. J'avais déjà un peu d'expérience avec Linux mais jusqu'à récemment, j'avais gardé Windows pour VS code (solution de facilité j'en conviens).
Aujourd'hui, j'aimerais pouvoir me débarasser de mon dualboot pour passer complètement sur Linux. J'ai donc installé g++ et VS code sous Fedora en me basant sur les tutoriels des sites officiels de ces logiciels et des forums d'entraide de fedora.
J'ai créé un dossier qui sera mon premier projet, mais dès le fameux Hello World je rencontre un problème : je n'arrive pas a compiler ! À noter que j'apprends la programmation
Pour le moment voila mon fichier main.cpp :
#include <iostream>
int main(){
std::cout << "Hello World" << std::endl;
return 0;
}
Dans mon terminal, je me rends dans le dossier où se trouve main.cpp à l'aide de la commande cd, puis j'entre la commande donné dans les forum que j'ai lue :
g++ main.cpp -o main
Mais là, ça ne fonctionne pas ; j'obtiens le message :
dans la fonction « _start » : (.text+0x1b) : référence indéfinie vers « main » collect2: erreur: ld a retourné le statut de sortie 1
Je ne sais absolument pas à quoi cela fait allusion, surtout que pour l'instant je suis le cours le plus basique ^^' Et je ne trouve personne sur internet qui a un tel problème ! Généralement, il y a une erreur dans leur code et en la corrigeant le problème disparaît, mais là, pour moi, je ne vois pas ! Le même code fonctionne sous windows. Est-ce qu'il me manque un logiciel ? Bref qu'est-ce que j'ai raté ?
- Comment faire de la programmation C++ depuis fedora ??
- Fedora vs ubuntu - Guide
- Application de programmation - Guide
- Comment programmer un message - Guide
- Comment programmer un mail sur gmail - Guide
- Télécharger le programme de pmu - Télécharger - Médias et Actualité

Bonsoir,
Merci pour ta reponse. Et bien oui je suis sur de mon nom de fichier j'ai finis par tout désinstaller réinstaller sans supprimer mon dossier contenant mon main.cpp et maintenant tout fonctionne (pour ce dossier uniquement).
J'ai donc le meme resultat que ton screen pour mon 1er dossier que l'on va appeler "projet1".
Cependant j'ai créer un dossier "projet2" et la de nouveau la meme erreur de reference avec main quand j'entre la commande
g++ Main.cpp -o myProgram
Voici l'output exacte que j'obtiens pour cette commande:
/usr/bin/ld : /usr/lib/gcc/x86_64-redhat-linux/15/../../../../lib64/crt1.o : dans la fonction « _start » :
(.text+0x1b) : référence indéfinie vers « main »
collect2: erreur: ld a retourné le statut de sortie 1
Encore une fois je suis sure a 100% de mon nom de fichier Main.cpp je l'ai toujours ecris comme cela le M en majuscule ain.cpp tout attacher (deja sur windows je l'ecrivais de la sorte) pour tous mes programme c'est le nom que je donne au fichiers cpp qui contiennent la fonction main() dans TOUT mes projets au moins c'est clair a chaque programme pas d'erreur possible d'un programme a l'autre.
Dans mon projet2 le code est le suivant:
#include "iostream"
int main()
{
std::cout<<"hello world"<<std::endl;
return 0;
}
En gros le meme probleme de base qu'avec mon projet1.
Je me vois mal desinstaller tout mon attirail de code a chaque nouveau programme et j'aimerais bien comprendre mon erreur y a t il une manip que j'oublie ou que je fais mal lorsque je crée un dossier qui servira de projet pour un programme ?
PS: J'ai laisser tomber vs code pour Kate car sur internet je trouve beaucoup plus de monde utilisant kate que vscode sur fedora et linux en general.
j'ai egalement ouvert mon terminal dans le bon dossier si jamais^^
Quand je me place dans le dossier "projet1" et que je tape la commande il crée correctement le fichier executable et je n'ai plus qu'a taper ./"nom du fichier" pour executer mon programme et tout va bien, et si erreur dans mon code il y a alors mon terminal m'indique ou est-ce qu'il attendait une syntaxe differente .
Je me place donc avec la commande cd dans le dossier "projet2" je tape ma commande et la erreur comme cité plus haut ou on me renvoi le code 1.