|
It is pretty obvious that if I have OpenCV_LIBS set instead of
OpenCV_LIBRARIES then the code below does not set the correct one? Gert > yes, in Cmake it's case sensitive... > > But i don't understand why al compile here under Linux Mandriva 2010.1 > and not in your computer... > > Gilles Caulier > > 2010/12/15 Gert Kello <[hidden email]>: >>>> IF (NOT OpenCV_LIBRARIES) >>>> SET(OPENCV_LIBRARIES ${OpenCV_LIBS}) >> >> Perhaps the names are case-sensitive? Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
In reply to this post by Bugzilla from gert.kello@gmail.com
> Meantime I applied the patch attached... Everything seems to go fine
> until it starts to link digikam.. (see builderror.txt) Is it picking > up some old libraries from kde dir? (I can't make uninstall at moment > anymore, but I can make clean KDE install if You think it will help) > At least most of that seems to be unrelated to the changes made with > mu patch... I was finally able to make full build. Diff of changes attached. The final missing bit was Index: core/digikam/CMakeLists.txt =================================================================== --- core/digikam/CMakeLists.txt (revision 1206649) +++ core/digikam/CMakeLists.txt (working copy) @@ -248,6 +248,8 @@ ${KDE4_SOLID_LIBS} ${KIPI_LIBRARIES} ${KEXIV2_LIBRARIES} + ${KFACE_LIBRARIES} + ${KMAP_LIBRARIES} ${KDCRAW_LIBRARIES} ${QT_QTSQL_LIBRARY} ${QT_QTSCRIPT_LIBRARY} Gert _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
In reply to this post by Marcel Wiesweg
>> > I remember some discussion to ship ourselves the version which comes with
>> > OpenCV, with a patch by Gert, and throw away the homebrewn one? >> >> The OpenCv has OpenCVConfig.cmake, which provides a information needed... > > Ok I understand now: OpenCVConfig.cmake has simply the values hardcoded, while > FindOpenCV.cmake will locate them dynamically. > That means only the latter is suitable for shipping with a dependent package. Well, I have couple of hints for You: 1. Perhaps You should fix Your FindOpenCV.cmake so that it works on windows with trunk of OpenCV also. I tried to figure out what is going on but failed. I have never written cmake scripts before, I'm just hacking around. 2. Maybe it is clever to use same variable names as official OpenCVConfig.cmake does? (Sorry, I'm a bit frustrated right now) Gert _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
> 1. Perhaps You should fix Your FindOpenCV.cmake so that it works on > windows with trunk of OpenCV also. I tried to figure out what is going > on but failed. I have never written cmake scripts before, I'm just > hacking around. I think the file was copied from somewhere else. And probably never tested on Windows. Btw, I haven't ever written a cmake detection script either. > 2. Maybe it is clever to use same variable names as official > OpenCVConfig.cmake does? That would indeed be an improvement ;-) Michael, you have had a look into this. Is the FindOpenCV.cmake written cleanly, or is it a hack? _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
In reply to this post by Bugzilla from gert.kello@gmail.com
On 12/15/2010 07:45 AM, Gert Kello wrote:
>>> IF (NOT OpenCV_LIBRARIES) >>> SET(OPENCV_LIBRARIES ${OpenCV_LIBS}) > > Perhaps the names are case-sensitive? Thanks, fixed in 1206763! Michael _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
In reply to this post by Bugzilla from gert.kello@gmail.com
On 12/15/2010 06:41 AM, Gert Kello wrote:
>> I hope this solves all the FindOpenCV issues for now. Please let me know >> whether it works, and thanks for trying it! > > Almost. If I use "external opencv find" flag then kipi-plugins do not > find opencv: > > -- CMake version (cleaned): cmake version 2.8.3 > > -- > -- ---------------------------------------------------------------------------------- > -- kipi-plugins 2.0.0-beta1 dependencies results > <http://www.kipi-plugins.org> > -- > -- libjpeg library found.................... YES > -- libtiff library found.................... YES > -- libpng library found..................... YES > -- libkipi library found.................... YES > -- libkexiv2 library found.................. YES > -- libkdcraw library found.................. YES > -- libkmap library found.................... YES > -- libxml2 library found.................... YES (optional) > -- libxslt library found.................... YES (optional) > -- libexpat library found................... YES (optional) > -- native threads support library found..... YES (optional) > -- libopengl library found.................. YES (optional) > -- Qt4 OpenGL module found.................. YES > -- libopencv library found.................. NO (optional) > > Maybe: > Index: extra/kipi-plugins/CMakeLists.txt > =================================================================== > --- extra/kipi-plugins/CMakeLists.txt (revision 1206613) > +++ extra/kipi-plugins/CMakeLists.txt (working copy) > @@ -142,6 +142,12 @@ > MACRO_OPTIONAL_FIND_PACKAGE(OpenCV) # For RemoveRedEyes. > MACRO_OPTIONAL_FIND_PACKAGE(QJSON) # For Debian Screenshots. > > +IF (NOT OPENCV_FOUND) > + IF (OpenCV_VERSION VERSION_GREATER "2.0.99") > + SET(OPENCV_FOUND TRUE) > + ENDIF (OpenCV_VERSION VERSION_GREATER "2.0.99") > +ENDIF (NOT OPENCV_FOUND) > + Thanks for finding this one! Actually it looks like OPENCV_FOUND is the 'legacy' name in the "Jan Woetzel" FindOpenCV.cmake, and the 'new' name is OpenCV_FOUND. Fixed in commit 1206767. Michael _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
In reply to this post by Bugzilla from gert.kello@gmail.com
On 12/15/2010 09:45 AM, Gert Kello wrote:
>> Meantime I applied the patch attached... Everything seems to go fine >> until it starts to link digikam.. (see builderror.txt) Is it picking >> up some old libraries from kde dir? (I can't make uninstall at moment >> anymore, but I can make clean KDE install if You think it will help) >> At least most of that seems to be unrelated to the changes made with >> mu patch... > > I was finally able to make full build. Diff of changes attached. > > The final missing bit was > Index: core/digikam/CMakeLists.txt > =================================================================== > --- core/digikam/CMakeLists.txt (revision 1206649) > +++ core/digikam/CMakeLists.txt (working copy) > @@ -248,6 +248,8 @@ > ${KDE4_SOLID_LIBS} > ${KIPI_LIBRARIES} > ${KEXIV2_LIBRARIES} > + ${KFACE_LIBRARIES} > + ${KMAP_LIBRARIES} > ${KDCRAW_LIBRARIES} > ${QT_QTSQL_LIBRARY} > ${QT_QTSCRIPT_LIBRARY} Strange, but added in commit 1206770. I'm glad to hear that it finally builds for you! I also integrated the changes from your other e-mails, so I expect it to build now with -DKFACE_EXTERNAL_FINDOPENCV:BOOL=TRUE. Thanks for sticking through all the trouble, Michael _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
In reply to this post by Marcel Wiesweg
On 12/15/2010 01:51 PM, Marcel Wiesweg wrote:
> > >> 1. Perhaps You should fix Your FindOpenCV.cmake so that it works on >> windows with trunk of OpenCV also. I tried to figure out what is going >> on but failed. I have never written cmake scripts before, I'm just >> hacking around. > > I think the file was copied from somewhere else. And probably never tested on > Windows. Btw, I haven't ever written a cmake detection script either. > >> 2. Maybe it is clever to use same variable names as official >> OpenCVConfig.cmake does? > > That would indeed be an improvement ;-) > > Michael, you have had a look into this. Is the FindOpenCV.cmake written > cleanly, or is it a hack? Looking at this one: http://opencv.willowgarage.com/wiki/FindOpenCV.cmake It states it supersedes the one we have (Jan Woetzel version), but I can't tell which one would work better, and I'm not sure the Jan Woetzel version we have is the original one. I only know that the version from willowgarage.com does not find my OpenCV installation (debian sid)... so I really can't tell which one is 'right'... Michael _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
In reply to this post by Jasper
On 12/14/2010 11:39 PM, Jasper wrote:
> > replacing FindOpenCV.cmake with the version from: > http://opencv.willowgarage.com/wiki/FindOpenCV.cmake > worked for me here. > > build fails tho with this sort of thing > > undefined reference to `cvLoadImage' This could be the OpenCV_LIBS versus OPENCV_LIBS typo mentioned in another mail, which should be fixed now. Please clear the cmake cache file before trying again, to make sure everything is regenerated. > I am suprised that I still needed to build libkexiv2 etc. before hand, I > thought the idea being that this would happne automagically... (is this > where its heading?) That's the plan, yes. Can you post a log of what happens when you don't build libkexiv2 beforehand? Also, which version do you have installed and where (/usr or /usr/local or /what/ever)? Michael _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
In reply to this post by Bugzilla from Julien@narboux.fr
On 12/14/2010 04:36 PM, Julien Narboux wrote:
> For me compilation of 2.0.0beta stops here: > > > [ 14%] Building CXX object > extra/kipi-plugins/gpssync/CMakeFiles/kipiplugin_gpssync.dir/setup_general.cpp.o > > [ 14%] Building CXX object > extra/kipi-plugins/gpssync/CMakeFiles/kipiplugin_gpssync.dir/borrowed/modeltest.cpp.o > > [ 14%] Building CXX object > extra/kipi-plugins/gpssync/CMakeFiles/kipiplugin_gpssync.dir/backend-geonamesUS-rg.cpp.o > > [ 14%] Building CXX object > extra/kipi-plugins/gpssync/CMakeFiles/kipiplugin_gpssync.dir/rgtagmodel.cpp.o > > [ 14%] Building CXX object > extra/kipi-plugins/gpssync/CMakeFiles/kipiplugin_gpssync.dir/tests/simpletreemodel/simpletreemodel.cpp.o > > Linking CXX shared module ../../../lib/kipiplugin_gpssync.so > CMakeFiles/kipiplugin_gpssync.dir/kipiimageitem.cpp.o: In function > `KIPIGPSSyncPlugin::KipiImageItem::getExiv2ForFile()': > /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/gpssync/kipiimageitem.cpp:149: > undefined reference to `KExiv2Iface::KExiv2::setUseXMPSidecar4Reading(bool)' > /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/gpssync/kipiimageitem.cpp:150: > undefined reference to `KExiv2Iface::KExiv2::setMetadataWritingMode(int)' > /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/gpssync/kipiimageitem.cpp:154: > undefined reference to `KExiv2Iface::KExiv2::setUseXMPSidecar4Reading(bool)' > /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/gpssync/kipiimageitem.cpp:155: > undefined reference to `KExiv2Iface::KExiv2::setMetadataWritingMode(int)' > CMakeFiles/kipiplugin_gpssync.dir/kipiimageitem.cpp.o: In function > `KIPIGPSSyncPlugin::KipiImageItem::saveChanges(bool, bool)': > /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/gpssync/kipiimageitem.cpp:724: > undefined reference to `KExiv2Iface::KExiv2::setGPSInfo(double, double, > double, bool)' > /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/gpssync/kipiimageitem.cpp:780: > undefined reference to `KExiv2Iface::KExiv2::removeGPSInfo(bool)' > collect2: ld returned 1 exit status > make[2]: *** [lib/kipiplugin_gpssync.so] Erreur 1 > make[1]: *** > [extra/kipi-plugins/gpssync/CMakeFiles/kipiplugin_gpssync.dir/all] Erreur 2 > make: *** [all] Erreur 2 Looks like it finds the right header files, but the wrong library. Can you recompile with make -VERBOSE=1 to see the command line parameters? Also, which version of libkexiv2 do you have installed and where (/usr or /usr/local or /what/ever)? Michael _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
In reply to this post by Michael G. Hansen
After updating to revision 1206792, everything builds as it should. |
|
In reply to this post by Michael G. Hansen
Le 15/12/2010 21:16, Michael G. Hansen a écrit :
> On 12/14/2010 04:36 PM, Julien Narboux wrote: >> For me compilation of 2.0.0beta stops here: >> >> >> [ 14%] Building CXX object >> extra/kipi-plugins/gpssync/CMakeFiles/kipiplugin_gpssync.dir/setup_general.cpp.o >> >> [ 14%] Building CXX object >> extra/kipi-plugins/gpssync/CMakeFiles/kipiplugin_gpssync.dir/borrowed/modeltest.cpp.o >> >> [ 14%] Building CXX object >> extra/kipi-plugins/gpssync/CMakeFiles/kipiplugin_gpssync.dir/backend-geonamesUS-rg.cpp.o >> >> [ 14%] Building CXX object >> extra/kipi-plugins/gpssync/CMakeFiles/kipiplugin_gpssync.dir/rgtagmodel.cpp.o >> >> [ 14%] Building CXX object >> extra/kipi-plugins/gpssync/CMakeFiles/kipiplugin_gpssync.dir/tests/simpletreemodel/simpletreemodel.cpp.o >> >> Linking CXX shared module ../../../lib/kipiplugin_gpssync.so >> CMakeFiles/kipiplugin_gpssync.dir/kipiimageitem.cpp.o: In function >> `KIPIGPSSyncPlugin::KipiImageItem::getExiv2ForFile()': >> /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/gpssync/kipiimageitem.cpp:149: >> undefined reference to `KExiv2Iface::KExiv2::setUseXMPSidecar4Reading(bool)' >> /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/gpssync/kipiimageitem.cpp:150: >> undefined reference to `KExiv2Iface::KExiv2::setMetadataWritingMode(int)' >> /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/gpssync/kipiimageitem.cpp:154: >> undefined reference to `KExiv2Iface::KExiv2::setUseXMPSidecar4Reading(bool)' >> /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/gpssync/kipiimageitem.cpp:155: >> undefined reference to `KExiv2Iface::KExiv2::setMetadataWritingMode(int)' >> CMakeFiles/kipiplugin_gpssync.dir/kipiimageitem.cpp.o: In function >> `KIPIGPSSyncPlugin::KipiImageItem::saveChanges(bool, bool)': >> /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/gpssync/kipiimageitem.cpp:724: >> undefined reference to `KExiv2Iface::KExiv2::setGPSInfo(double, double, >> double, bool)' >> /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/gpssync/kipiimageitem.cpp:780: >> undefined reference to `KExiv2Iface::KExiv2::removeGPSInfo(bool)' >> collect2: ld returned 1 exit status >> make[2]: *** [lib/kipiplugin_gpssync.so] Erreur 1 >> make[1]: *** >> [extra/kipi-plugins/gpssync/CMakeFiles/kipiplugin_gpssync.dir/all] Erreur 2 >> make: *** [all] Erreur 2 > Looks like it finds the right header files, but the wrong library. Can > you recompile with make -VERBOSE=1 to see the command line parameters? > > Also, which version of libkexiv2 do you have installed and where (/usr > or /usr/local or /what/ever)? > > Michael > _______________________________________________ > Digikam-devel mailing list > [hidden email] > https://mail.kde.org/mailman/listinfo/digikam-devel This is under ubuntu 10.10. I had a version of libkexiv2 installed intro /usr from kdegraphics/libs from digikam 1.7 source tree. I updated the libkexiv2 using kdegraphics/libs from 1.7 source tree and now the compilation works fine. But if I try to compile the libkexiv2 coming from the extra directory inside 2.0.0 source tree i get a makefile which does nothing (but cmake works fine). Under ubuntu 10.4 cmake does not find opencv although it is installed from ubuntu packages. Julien _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
In reply to this post by Michael G. Hansen
Am Mittwoch, 15. Dezember 2010, 21:16:19 schrieb Michael G. Hansen:
> > Linking CXX shared module ../../../lib/kipiplugin_gpssync.so > > CMakeFiles/kipiplugin_gpssync.dir/kipiimageitem.cpp.o: In function > > `KIPIGPSSyncPlugin::KipiImageItem::getExiv2ForFile()': > > /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/g > > pssync/kipiimageitem.cpp:149: undefined reference to > > `KExiv2Iface::KExiv2::setUseXMPSidecar4Reading(bool)' > > /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/ > > gpssync/kipiimageitem.cpp:150: undefined reference to > > `KExiv2Iface::KExiv2::setMetadataWritingMode(int)' > > /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/ > > gpssync/kipiimageitem.cpp:154: undefined reference to > > `KExiv2Iface::KExiv2::setUseXMPSidecar4Reading(bool)' > > /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/ > > gpssync/kipiimageitem.cpp:155: undefined reference to > > `KExiv2Iface::KExiv2::setMetadataWritingMode(int)' > > CMakeFiles/kipiplugin_gpssync.dir/kipiimageitem.cpp.o: In function > > `KIPIGPSSyncPlugin::KipiImageItem::saveChanges(bool, bool)': > > /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/g > > pssync/kipiimageitem.cpp:724: undefined reference to > > `KExiv2Iface::KExiv2::setGPSInfo(double, double, double, bool)' > > /home/jnarboux/digikam_versions/2.0/graphics/digikam/extra/kipi-plugins/g > > pssync/kipiimageitem.cpp:780: undefined reference to > > `KExiv2Iface::KExiv2::removeGPSInfo(bool)' collect2: ld returned 1 exit > > status > > make[2]: *** [lib/kipiplugin_gpssync.so] Erreur 1 > > make[1]: *** > > [extra/kipi-plugins/gpssync/CMakeFiles/kipiplugin_gpssync.dir/all] Erreur > > 2 make: *** [all] Erreur 2 > > Looks like it finds the right header files, but the wrong library. Can > you recompile with make -VERBOSE=1 to see the command line parameters? > > Also, which version of libkexiv2 do you have installed and where (/usr > or /usr/local or /what/ever)? I have installed the latest version from trunk: -- Install configuration: "debugfull" -- Installing: /usr/lib64/pkgconfig/libkexiv2.pc -- Installing: /usr/lib64/libkexiv2.so.9.0.0 -- Up-to-date: /usr/lib64/libkexiv2.so.9 -- Installing: /usr/lib64/libkexiv2.so -- Installing: /usr/include/libkexiv2/kexiv2.h -- Installing: /usr/include/libkexiv2/kexiv2data.h -- Installing: /usr/include/libkexiv2/kexiv2previews.h -- Installing: /usr/include/libkexiv2/libkexiv2_export.h -- Installing: /usr/include/libkexiv2/msgtextedit.h -- Installing: /usr/include/libkexiv2/subjectwidget.h -- Installing: /usr/include/libkexiv2/altlangstredit.h -- Installing: /usr/include/libkexiv2/countryselector.h -- Up-to-date: /usr/include/libkexiv2/rotationmatrix.h -- Installing: /usr/include/libkexiv2/version.h -- Installing: /usr/share/kde4/apps/libkexiv2/data/topicset.iptc- subjectcode.xml And with this compiling digikam2 works, with and old libkexiv2 installed it fails although it could/should use the one from the digikam2 branch. Sven _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
| Free forum by Nabble | Edit this page |
