I've got C++ functions written and compiled with MSVS 2008 in Windows. They have some templates.
The functions are compiled and work just fine in Windows, but when I compile the same project in Ubuntu with "make", it generates errors. Here's the template
template <class NumType>
void drawCircles(cv::Mat& image, const cv::Mat_<cv::Vec<NumType, 2>> points, cv::Scalar color)
{
// added working for both row/col point vector
Point2d p0;
for (int i = 0; i < points.cols; i++)
{
p0.x = cvRound(points.at<Vec<NumType, 2>>(0,i)[0]);
p0.y = cvRound(points.at<Vec<NumType, 2>>(0,i)[1]);
circle(image, p0, 5, color, 2, 8);
}
}
the error keeps repeating that:
‘points’ was not declared in this scope
Is there any option with make or CMake that creates such error for template?
Thank you at best!