Forums » Compilation problems »
problème de compilation sur la r617
Added by Théveny Frédéric almost 10 years ago
Bonjour,
je viens de tester la compilation de la r617 sur une debian, et j’ai une erreur de compilation dans pluginshared :
xxx/computree/computreev3/pluginshared/ct_coordinates/tools/ct_coordinatesystemcloudindex.h:76: error: 'class std::vector<unsigned int>' has no member named 'shrink_to_fit'
m_vector.shrink_to_fit();
^
Ça vient du fait que le shrink_tofit() est une fonction C++11 et que par défaut sous linux g++ n’est pas en C++11.
Il faudrait rajouter un
QMAKE_CXXFLAGS += -std=gnu++0x
ou équivalent quelque part dans le .pro
Replies (21)
RE: problème de compilation sur la r617 - Added by Théveny Frédéric almost 10 years ago
je m’en suis sorti en mettant
greaterThan(QT_MAJOR_VERSION, 4) {
CONFIG += c++11
} else {
QMAKE_CXXFLAGS += -std=c++11
}
dans le ComputreeCore/shared/shared.pri et le pluginshared/include_all/include_all.pri
Par contre je n’ai aucune idée de la portabilité sous windows
RE: problème de compilation sur la r617 - Added by Théveny Frédéric over 9 years ago
La suite :
j’ai l’erreur suivante :
xxx/computree/pluginonf/pluginonf/filter/onf_filterbyreturntype.h:28: error: ct_filter/abstract/ct_abstractfilter_las.h: No such file or directory #include "ct_filter/abstract/ct_abstractfilter_las.h"
je suis allé chercher le fichier dans : ./computreev3/library/ctlibio/filters/las/abstract/ct_abstractfilter_las.h
RE: problème de compilation sur la r617 - Added by Théveny Frédéric over 9 years ago
xxx/computree/pluginonf/pluginonf/step/onf_stepdetectverticalalignments06.h:146: error: extra qualification 'ONF_StepDetectVerticalAlignments06::ScanLineData::' on member 'operator=' [-fpermissive]
ScanLineData& ScanLineData::operator=(const ScanLineData& arg)
j’ai replacé
ScanLineData& ScanLineData::operator=(const ScanLineData& arg)
par
ScanLineData& operator=(const ScanLineData& arg)
RE: problème de compilation sur la r617 - Added by Théveny Frédéric over 9 years ago
Pour les erreurs suivantes :
⇒ include manquant
xxx/computree/pluginonf/pluginonf/step/onf_stepdetectverticalalignments06.cpp:32: error: ct_itemdrawable/ct_stdlaspointsattributescontainer.h: No such file or directory #include "ct_itemdrawable/ct_stdlaspointsattributescontainer.h"
J’ai commenté l’include et remplacé par #include “ctlibio/itemdrawable/las/ct_stdlaspointsattributescontainer.h”
⇒ extra qualification
xxx/computree/pluginonf/pluginonf/step/onf_stepdetectverticalalignments05.h:141: error: extra qualification 'ONF_StepDetectVerticalAlignments05::ScanLineData::' on member 'operator=' [-fpermissive]
ScanLineData& ScanLineData::operator=(const ScanLineData& arg)
j’ai remplacé
ScanLineData& ScanLineData::operator=(const ScanLineData& arg)
par
ScanLineData& operator=(const ScanLineData& arg)
⇒ soucis sur const
xxx/computree/pluginonf/pluginonf/step/onf_stepdetectverticalalignments05.cpp:527: error: invalid initialization of non-const reference of type 'ONF_StepDetectVerticalAlignments05::ScanLineData&' from an rvalue of type 'ONF_StepDetectVerticalAlignments05::ScanLineData'
ScanLineData &mainLine = keptLinesOfScan.takeLast();
j’ai modifié par :
const ScanLineData &mainLine = keptLinesOfScan.takeLast();
A priori on ne modifie que le contenu de la QList pas la QList elle même, ça ne devrait pas géner.
RE: problème de compilation sur la r617 - Added by Théveny Frédéric over 9 years ago
Au final j’ai pu compiler sans autres modifs (debian 8.2 / 64bits / Release) mais computree plante au lancement lors de l’initialisation du plugin ONFLsis v2 que j’ai du coup enlevé de la chaîne.
Le reste à l’air de fonctionner plutôt bien à première vue.
J’espère que ce thread sera utile
RE: problème de compilation sur la r617 - Added by Krebs Michaël over 9 years ago
Bonjour Fred,
et merci pour toutes ses corrections, je viens de faire un commit qui corrige tous ces problèmes que tu as remonté.
PS : le plugin onflsis a été mis à jour aussi et ne plant plus au démarrage de Computree.
RE: problème de compilation sur la r617 - Added by Théveny Frédéric over 9 years ago
ok j’update et je te fais les retours éventuels
Merci !
RE: problème de compilation sur la r617 - Added by Théveny Frédéric over 9 years ago
Alors j’ai rencontré 2 soucis :
⇒ soucis sur un déréférencement
xxx/computree/computreev3/pluginshared/ct_cloudindex/ct_cloudindexstdvectort.hpp:209: error: base operand of '->' has non-pointer type 'const std::vector<int, std::allocator<int> >'
typename std::vector<ct_index_type>::iterator first = _vector->begin();
j’ai remplacé le → par un . :
typename std::vector<ct_index_type>::iterator first = _vector.begin();
typename std::vector<ct_index_type>::iterator last = _vector.end();
Mais au final j’ai un soucis au link sur ctlibio :
error: cannot find -lctlibio
RE: problème de compilation sur la r617 - Added by Krebs Michaël over 9 years ago
correction faite et commit aussi.
probleme de ctlibio sur quel plugin ?
RE: problème de compilation sur la r617 - Added by Théveny Frédéric over 9 years ago
A priori c’est sur le link de libplug_base :
g++ -m64 -Wl,-O1 -shared -o libplug_base.so release/.obj/pb_pluginentry.o release/.obj/pb_steppluginmanager.o (...) -L/usr/lib -losg -lOpenThreads -losgGA -losgViewer -losgWidget -losgManipulator -losgSim -losgText -losgUtil -losgDB -losgFX -L../../ComputreeInstallRelease -lctlibio -lQt5Widgets -lQt5Concurrent -lQt5Gui -lQt5Core -lGL -lpthread /usr/bin/ld: cannot find -lctlibio
RE: problème de compilation sur la r617 - Added by Krebs Michaël over 9 years ago
tu compile avec base.pro ou projet par projet. As-tu compiler computreev3/library/ctlibio ?
RE: problème de compilation sur la r617 - Added by Théveny Frédéric over 9 years ago
Je compile avec le base.pro et la lib libCTLibIO.so compile individuellement. Je suis en train de tester différentes pistes (peut-être juste une histoire de casse ?) mais chaque compile un peu grosse me prends 10 minutes ce qui fait que ça n’avance pas vite...
RE: problème de compilation sur la r617 - Added by Théveny Frédéric over 9 years ago
Pour info, la compilation globale bloque sur
/home/theveny/Documents/dev/qtcreatorworkspace/computree/pluginonf/pluginonf/step/onf_steploaddatafromitemposition.cpp:34: error: ct_itemdrawable/ct_datasourcegeo.h: No such file or directory #include "ct_itemdrawable/ct_datasourcegeo.h"
RE: problème de compilation sur la r617 - Added by Piboule Alexandre over 9 years ago
L’erreur avec onf_steploaddatafromitemposition est corrigée.
RE: problème de compilation sur la r617 - Added by Krebs Michaël over 9 years ago
L’erreur de libCTLibIO est corrigée (dernier commit)
RE: problème de compilation sur la r617 - Added by Théveny Frédéric over 9 years ago
bonjour Michael et merci pour ta réactivité !
J’ai fait l’update et j’ai un dernier petit problème du même type : error: cannot find -lctlibpcl
Normalement je n’utilise pas PCL (en tout cas j’ai enlevé le flag) mais il semble que le qmake le détecte tout seul.
RE: problème de compilation sur la r617 - Added by Krebs Michaël over 9 years ago
C’est que un des plugins que tu compile utilise PCL. Il faut compiler le projet computreev3/library/libcpl en complément pour qu’il n’y ai plus l’erreur. Sur quel plugin as tu cette erreur ?
RE: problème de compilation sur la r617 - Added by Théveny Frédéric over 9 years ago
A priori c’est libplug_toolkit qui plante :
g++ -m64 -Wl,-O1 -shared -o libplug_toolkit.so release/.obj/tk_pluginentry.o release/.obj/tk_steppluginmanager.o (...) -L/usr/X11R6/lib64 ../../ComputreeInstallRelease/libpluginShared.so* -L/usr/lib -losg -lOpenThreads -losgGA -losgViewer -losgWidget -losgManipulator -losgSim -losgText -losgUtil -losgDB -losgFX -L../../ComputreeInstallRelease -lctlibpcl -lQt5Widgets -lQt5Gui -lQt5Core -lGL -lpthread /usr/bin/ld: cannot find -lctlibpcl
RE: problème de compilation sur la r617 - Added by Krebs Michaël over 9 years ago
oui le plugin toolkit détecte PCL sur ton PC et si il est présent il compile avec une étape qui a besoin de PCL. Donc tu dois juste compiler libpcl dans computreev3/library/libcpl et tu peux recompiler le plugin toolkit sans erreur.
RE: problème de compilation sur la r617 - Added by Théveny Frédéric over 9 years ago
ok je teste ça ASAP
Encore merci !
RE: problème de compilation sur la r617 - Added by Théveny Frédéric over 9 years ago
Super ça fonctionne.
Encore merci !