CudaSift安装故障 我刚刚从Python移到C++。 我正在使用VSCode,并且希望使用以下库:
因此,我克隆了repo,在其中创建一个build文件夹,将cd刻录到build文件夹,使用:CudaSift安装故障 我刚刚从Python移到C++。 我正在使用VSCode,并且希望使用以下库:,c++,include,g++,sift,C++,Include,G++,Sift,因此,我克隆了repo,在其中创建一个build文件夹,将cd刻录到build文件夹,使用:cmake.. 然后sudo-make最后sudo-make-install我在控制台中得到以下输出: 完成这些步骤后,我得到一个名为“cudasift”的共享库文件 据我所知,我必须编译我的代码,如下所示: #include <iostream> #include <opencv4/opencv2/opencv.hpp> #include <cudaImage.h>
cmake..
然后sudo-make
最后sudo-make-install
我在控制台中得到以下输出:
完成这些步骤后,我得到一个名为“cudasift”的共享库文件
据我所知,我必须编译我的代码,如下所示:
#include <iostream>
#include <opencv4/opencv2/opencv.hpp>
#include <cudaImage.h>
#include <cudaSift.h>
int main(){
SiftData siftData;
cv::Mat img;
cv::imread("Cam_0-19129655-STATIC-exp:200-gain:27.jpg").convertTo(img, CV_32FC1);
CudaImage cuda_img;
// cuda_img.Allocate(4000, 3000, 4000, false, NULL, (float*) cuda_img.d_data);
// cuda_img.Download();
int numOctaves = 5;
float initBlur = 1.0f;
float thresh = 3.5f;
float minScale = 0.0f;
bool upScale = false;
// ExtractSift(siftData, cuda_img, numOctaves, initBlur, thresh, minScale, upScale);
// FreeSiftData(siftData);
return 0;
}
在花了几个小时寻找答案之后,我仍然被困在这里。
PS:我使用VSCode您既没有编译也没有链接任何包含未定义引用的内容。CMake安装构建了一个可执行程序,而不是库,并且没有安装库。@talonmies谢谢你的回答,我不明白,那么我该如何安装库呢?我不应该使用提供的CMakeLists吗?它实际上安装了一个名为“cudasift”的文件,类型为:Shared library您没有编译或链接任何包含未定义引用的内容。CMake安装构建了一个可执行程序,而不是库,并且没有安装库。@talonmies谢谢你的回答,我不明白,那么我该如何安装库呢?我不应该使用提供的CMakeLists吗?它实际上安装了一个名为“cudasift”的文件,类型为:共享库
/usr/bin/ld: /home/user/Documents/packages/CudaSift/build/libcudasift.so: _ZSt4cout: invalid version 13 (max 0)
/home/user/Documents/packages/CudaSift/build/libcudasift.so: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
Makefile:2: recipe for target 'test' failed
make: *** [test] Error 1
The terminal process terminated with exit code: 2