#1 Le 08/02/2017, à 15:14
- sofiane777
problem avec un code en C++ (FlameDetector)
salut a tous bon j'ai un petit probleme d’abord voila mes fichier
common.h FlameDetection.v11.suo utils.cpp
FeatureAnalyzer.cpp FlameDetector.cpp utils.h
FeatureAnalyzer.h FlameDetector.h VideoHandler.cpp
FlameDecider.cpp main.cpp VideoHandler.h
FlameDecider.h TargetExtractor.cpp
FlameDetection.1 TargetExtractor.h
ensuite quand je lance le main ca me fais ca
$ g++ main.cpp
/tmp/ccIC0K6U.o : Dans la fonction « main » :
main.cpp:(.text+0x6c) : référence indéfinie vers « VideoHandler::VideoHandler(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool) »
main.cpp:(.text+0xa7) : référence indéfinie vers « VideoHandler::handle() »
/tmp/ccIC0K6U.o : Dans la fonction « cv::Mat::~Mat() » :
main.cpp:(.text._ZN2cv3MatD2Ev[_ZN2cv3MatD5Ev]+0x39) : référence indéfinie vers « cv::fastFree(void*) »
/tmp/ccIC0K6U.o : Dans la fonction « cv::Mat::release() » :
main.cpp:(.text._ZN2cv3Mat7releaseEv[_ZN2cv3Mat7releaseEv]+0x47) : référence indéfinie vers « cv::Mat::deallocate() »
/tmp/ccIC0K6U.o : Dans la fonction « TargetExtractor::~TargetExtractor() » :
main.cpp:(.text._ZN15TargetExtractorD2Ev[_ZN15TargetExtractorD5Ev]+0x1b) : référence indéfinie vers « cv::BackgroundSubtractorMOG2::~BackgroundSubtractorMOG2() »
/tmp/ccIC0K6U.o : Dans la fonction « FlameDecider::~FlameDecider() » :
main.cpp:(.text._ZN12FlameDeciderD2Ev[_ZN12FlameDeciderD5Ev]+0x3d) : référence indéfinie vers « CvSVM::~CvSVM() »
main.cpp:(.text._ZN12FlameDeciderD2Ev[_ZN12FlameDeciderD5Ev]+0x75) : référence indéfinie vers « CvSVM::~CvSVM() »
/tmp/ccIC0K6U.o : Dans la fonction « VideoHandler::~VideoHandler() » :
main.cpp:(.text._ZN12VideoHandlerD2Ev[_ZN12VideoHandlerD5Ev]+0x1b) : référence indéfinie vers « cv::VideoWriter::~VideoWriter() »
main.cpp:(.text._ZN12VideoHandlerD2Ev[_ZN12VideoHandlerD5Ev]+0x5b) : référence indéfinie vers « cv::VideoCapture::~VideoCapture() »
main.cpp:(.text._ZN12VideoHandlerD2Ev[_ZN12VideoHandlerD5Ev]+0xaf) : référence indéfinie vers « cv::VideoCapture::~VideoCapture() »
collect2: error: ld returned 1 exit status
je ne sais pas je suis perdu merci
Hors ligne
#2 Le 08/02/2017, à 20:48
- claudius01
Re : problem avec un code en C++ (FlameDetector)
Bonsoir,
Certes, mais ne peux-tu pas réduire ce problème à un Short, Self Contained, Correct (Compilable) (ou incorrect et/ou non compilable ;-) car je crains que tu n'aies pas trop de réponses.
De plus, sans aucun contenu de fichiers ni de lien sur un éventuel projet, cela ne va pas être simple de t'aider.
A suivre...
Hors ligne
#3 Le 08/02/2017, à 21:03
- pingouinux
Re : problem avec un code en C++ (FlameDetector)
Bonsoir,
Ce n'est apparemment pas la compilation qui plante, mais l'édition des liens. Tu peux déjà essayer, à tout hasard :
g++ *.cpp
De plus, deux des fichiers ont des noms bizarres : FlameDetection.v11.suo et FlameDetection.1
Hors ligne
#4 Le 09/02/2017, à 17:10
- sofiane777
Re : problem avec un code en C++ (FlameDetector)
Bonsoir,
Ce n'est apparemment pas la compilation qui plante, mais l'édition des liens. Tu peux déjà essayer, à tout hasard :g++ *.cpp
De plus, deux des fichiers ont des noms bizarres : FlameDetection.v11.suo et FlameDetection.1
j'ai essayé ca ne marche pas c'est le meme message et les nom des fichier c'est pas qui les a nommé ; pour plus d'information voila le code et les fichier https://github.com/liberize/flame-detection-system merci bcp pour votre aide
Hors ligne
#5 Le 09/02/2017, à 22:33
- grigouille
Re : problem avec un code en C++ (FlameDetector)
sudo apt-get install libopencv-dev
g++ -c *.cpp -std=c++11
g++ -o toto *.o $(pkg-config --libs opencv)
Debian (xfce) 12
HP LaserJet M1132 MFP
Hors ligne
#6 Le 09/02/2017, à 22:41
- sofiane777
Re : problem avec un code en C++ (FlameDetector)
sudo apt-get install libopencv-dev g++ -c *.cpp -std=c++11 g++ -o toto *.o $(pkg-config --libs opencv)
merci bpc pour votre aide j'ai fais ce quoi vous m'avais demandé voila cequi est sortie
sudo apt-get install libopencv-dev
[sudo] Mot de passe de rahal-sofiane :
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
libopencv-dev is already the newest version (2.4.9.1+dfsg-1.5ubuntu1).
Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
linux-headers-4.4.0-45 linux-headers-4.4.0-45-generic linux-headers-4.4.0-47
linux-headers-4.4.0-47-generic linux-image-4.4.0-45-generic
linux-image-4.4.0-47-generic linux-image-extra-4.4.0-45-generic
linux-image-extra-4.4.0-47-generic
Veuillez utiliser « sudo apt autoremove » pour les supprimer.
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
rahal-sofiane@rahalsofiane:~/Bureau/flame-detection-system-master/FlameDetection$ g++ -c main.cpp -std=c++11
rahal-sofiane@rahalsofiane:~/Bureau/flame-detection-system-master/FlameDetection$ g++ -o toto main.o $(pkg-config --libs opencv)
main.o : Dans la fonction « main » :
main.cpp:(.text+0x6c) : référence indéfinie vers « VideoHandler::VideoHandler(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool) »
main.cpp:(.text+0xa7) : référence indéfinie vers « VideoHandler::handle() »
collect2: error: ld returned 1 exit status
ps : le fichier main.o a été créé
merci
Hors ligne
#7 Le 10/02/2017, à 18:33
- grigouille
Re : problem avec un code en C++ (FlameDetector)
Tu n'exécutes pas ma commande de compilation : je compile tous les cpp et toi tu ne compiles que main.cpp
Debian (xfce) 12
HP LaserJet M1132 MFP
Hors ligne
#8 Le 10/02/2017, à 22:50
- sofiane777
Re : problem avec un code en C++ (FlameDetector)
Tu n'exécutes pas ma commande de compilation : je compile tous les cpp et toi tu ne compiles que main.cpp
j'ai fais ce que tu ma dis j'ai compilé avec tout les fichier et ya pas u de message d'erreur mais
common.h FlameDetection.v11.suo TargetExtractor.o
FeatureAnalyzer.cpp FlameDetector.cpp toto
FeatureAnalyzer.h FlameDetector.h utils.cpp
FeatureAnalyzer.o FlameDetector.o utils.h
FlameDecider.cpp main.cpp utils.o
FlameDecider.h main.o VideoHandler.cpp
FlameDecider.o TargetExtractor.cpp VideoHandler.h
FlameDetection.1 TargetExtractor.h VideoHandler.o
comme tu vois j'ai le fichier toto qui veux pas d’exécuté je fais quoi maintenant et merci de m’aidé merci bcp
Hors ligne
#9 Le 11/02/2017, à 07:12
- pingouinux
Re : problem avec un code en C++ (FlameDetector)
je fais quoi maintenant
./toto
Hors ligne
#10 Le 13/02/2017, à 16:28
- sofiane777
Re : problem avec un code en C++ (FlameDetector)
sofiane777 a écrit :je fais quoi maintenant
./toto
Merci beaucoup beaucoup beaucoup beaucoup
Hors ligne