Under Ubuntu 12.04 I have got from linker "undefined reference to `cv::Mat::zeros(int, int const*, int)'"
for 2.3 from repo and for 2.4.3 compiled from source.
And indeed if I go to the lib directory and ask for list of symbols from object files I can see
~/src/OpenCV-2.4.3/build/lib$ nm ./libopencv_core.so | c++filt | grep zeros
000000000015d690 T cv::Mat::zeros(cv::Size_<int>, int)
000000000015d460 T cv::Mat::zeros(int, int, int)
I.e. there is no cv::Mat::zeros(int , const int* , int)
it is same story for cv::Mat::ones(int , const int* , int)
Any suggestion how to get this into lib?
Update
file core.hpp, lines
1766 static MatExpr zeros(int rows, int cols);
1767 static MatExpr zeros(Size size);
1768 static MatExpr zeros(int _ndims, const int* _sizes);
where can I find implementation of last function? I can find first two, but not the last. What is a point to include function declaration in class if there is no implementation for it?
What is a level of support for N dim Mat in the light of line
91 typedef Mat MatND;
?
000000000015d460 T cv::Mat::zeros(int, int, int)
I.e. there is no cv::Mat::zeros(int , const int* , int)
it is same story for cv::Mat::ones(int , const int* , int)