tsdconseil / opencv-demonstrator

OpenCV demonstrator (GUI)
http://www.tsdconseil.fr/log/opencv/demo/index-en.html
GNU Lesser General Public License v3.0
141 stars 57 forks source link

No rule to make .exe file when TARGET=LINUX is set #3

Closed valera-rozuvan closed 8 years ago

valera-rozuvan commented 8 years ago

Hi @juliena82 ! = ) I am almost at the finish line! = ) Now, after all compiles nicely, there is a strange link error:

$ export TARGET=LINUX
$ make
Updating data files...
Compiling c++ file src/tools/image-selecteur.cc...
Compiling c++ file src/demo-items/photographie.cc...
Compiling c++ file src/tools/image-mosaic.cc...
Compiling c++ file src/demo-items/filter-demo.cc...
Compiling c++ file src/demo-items/morpho-demo.cc...
Compiling c++ file src/demo-items/gradient-demo.cc...
src/demo-items/gradient-demo.cc: In member function ‘virtual int HoughDemo::calcul(utils::model::Node&, cv::Mat&)’:
src/demo-items/gradient-demo.cc:266:48: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘std::vector<cv::Vec<float, 2> >::size_type {aka long unsigned int}’ [-Wformat=]
     printf("D�tect� %d lignes.\n", lines.size());
                                                ^
src/demo-items/gradient-demo.cc:303:48: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘std::vector<cv::Vec<float, 2> >::size_type {aka long unsigned int}’ [-Wformat=]
     printf("D�tect� %d lignes.\n", lines.size());
                                                ^
src/demo-items/gradient-demo.cc: In member function ‘virtual int HoughCDemo::calcul(utils::model::Node&, cv::Mat&)’:
src/demo-items/gradient-demo.cc:345:49: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘std::vector<cv::Vec<float, 3> >::size_type {aka long unsigned int}’ [-Wformat=]
   printf("D�tect� %d cercles.\n", cercles.size());
                                                 ^
Compiling c++ file src/demo-items/reco-demo.cc...
Compiling c++ file src/demo-items/histo.cc...
Compiling c++ file src/demo-items/seuillage.cc...
Compiling c++ file src/demo-items/video-demo.cc...
Compiling c++ file src/demo-items/espaces-de-couleurs.cc...
Compiling c++ file src/demo-items/3d.cc...
Compiling c++ file src/tools/boutils-image.cc...
Building project library: build/debug/lib.a...
ar: creating build/debug/lib.a
Building reduced library: build/debug/lib-base.a...
ar: creating build/debug/lib-base.a
make: *** No rule to make target 'build/debug/ocvdemo.exe', needed by 'all'.  Stop.

How should the Makefile be modified in order to exclude the .exe file on Linux?

valera-rozuvan commented 8 years ago

I have compiled it! It is alive = ) OK. So I got it to compile on latest stable Debian. With some minor hiccups... Fix is already in master = )

valera-rozuvan commented 8 years ago

Issue resolved in commit 21c5ddfd4037f49daac9ae10b3c3343822c74a01.

shervinemami commented 8 years ago

Great job @valera-rozuvan, sounds like you're almost done :)

juliena82 commented 8 years ago

Congratulations! For the link error, it is strange that it appears with some linux distribution and not with another... At this point, the error is caused by the Makefile not finding a required dependance for building the executable. It may be for instance that ocvext or libcutil were not build, or another external Library is missing.