沈蛮蛮 发表于 2015-5-8 09:52:32

VFH_recognition实例运行CMAKE和VS都报错

本帖最后由 沈蛮蛮 于 2015-5-8 09:58 编辑

   我在学习第16章16.2,使用VFH_recognition聚类识别时,在使用CMAKE编译时一直提示:   
    CMake Warning at CMakeLists.txt:16 (find_package):   By not providing "FindFlann.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "Flann", but CMake did not find one.   Could not find a package configuration file provided by "Flann" with any of the following names:                FlannConfig.cmake                flann-config.cmake   Add the installation prefix of "Flann" to CMAKE_PREFIX_PATH or set "Flann_DIR" to a directory containing one of the above files. If "Flann" provides a separate development package or SDK, be sure it has been installed.

    HDF5已经安装,没有报错,但是FLANN_dir这项报错。电脑安装的是ALL_IN_ONE包,环境是win732位,VS2010,重装PCL官网的FLANN1.7.0依旧不行
   该错误的提示好像需要找一个.cmake后缀的文件,在实例文件夹中找到一个FindFlann.cmake设置为Flann_DIR路径还是不行

    并且在生成的VS程序中编译报错,例如
    nearest_neighbors.obj : error LNK2001: 无法解析的外部符号 _H5T_NATIVE_UCHAR_g2>nearest_neighbors.obj : error LNK2001: 无法解析的外部符号 _H5T_NATIVE_SCHAR_g
2>nearest_neighbors.obj : error LNK2019: 无法解析的外部符号 _H5open,该符号在函数 "int __cdecl flann::`anonymous namespace'::get_hdf5_type<char>(void)" (??$get_hdf5_type@D@?A0x8dd4eaca@flann@@YAHXZ) 中被引用
2>nearest_neighbors.obj : error LNK2001: 无法解析的外部符号 _H5T_NATIVE_SHORT_g
2>nearest_neighbors.obj : error LNK2001: 无法解析的外部符号 _H5T_NATIVE_USHORT_g
2>nearest_neighbors.obj : error LNK2001: 无法解析的外部符号 _H5T_NATIVE_INT_g
2>nearest_neighbors.obj : error LNK2001: 无法解析的外部符号 _H5T_NATIVE_UINT_g
2>nearest_neighbors.obj : error LNK2001: 无法解析的外部符号 _H5T_NATIVE_LONG_g
2>nearest_neighbors.obj : error LNK2001: 无法解析的外部符号 _H5T_NATIVE_ULONG_g
2>nearest_neighbors.obj : error LNK2001: 无法解析的外部符号 _H5T_NATIVE_FLOAT_g
2>nearest_neighbors.obj : error LNK2001: 无法解析的外部符号 _H5T_NATIVE_DOUBLE_g
2>nearest_neighbors.obj : error LNK2001: 无法解析的外部符号 _H5T_NATIVE_LDOUBLE_g

   请问这个问题应该怎么解决?有人成功运行VFH_recognition实例吗?希望能给予帮助,谢谢!
   

布里 发表于 2015-5-8 15:41:51

你自己找一下你的Flann在什么位置,然后在cmake里面把路径自己写进去,我当时好像是这样做的

沈蛮蛮 发表于 2015-5-8 16:55:25

布里 发表于 2015-5-8 15:41 static/image/common/back.gif
你自己找一下你的Flann在什么位置,然后在cmake里面把路径自己写进去,我当时好像是这样做的 ...

cmake那个问题现在解决了,解决办法是把FindFlann.cmake放在source文件夹里。可是VS在编译的时候还是有那一堆错误,请问是我HDF5安装有问题吗?我直接默认路径安装,装的是1.8.14shared版本

沈蛮蛮 发表于 2015-5-8 17:18:08

布里 发表于 2015-5-8 15:41 static/image/common/back.gif
你自己找一下你的Flann在什么位置,然后在cmake里面把路径自己写进去,我当时好像是这样做的 ...

请问能提供VFH_recognition案例中的CMakeCache.txt文件吗?在生成的VS路径里,谢谢!

和你一样小馒头 发表于 2015-6-29 16:37:30

我也遇到跟楼主一样的问题,先是把flann的问题解决了,一直被第二个问题困扰,程序编译错误无法解析的外部符号,楼主你现在解决了吗?麻烦分享一下,谢谢!

沈蛮蛮 发表于 2015-12-24 22:38:22

和你一样小馒头 发表于 2015-6-29 16:37 static/image/common/back.gif
我也遇到跟楼主一样的问题,先是把flann的问题解决了,一直被第二个问题困扰,程序编译错误无法解析的外部 ...

主要是cmake里hdf5的路径问题,配置好就可以了

malian 发表于 2016-1-8 00:05:04

请问Flan的问题是怎么解决的啊?

malian 发表于 2016-1-8 10:03:22

请问HDF5_CXX_COMPILER_EXECUTABLE怎么配置的啊?路径是什么

lzy6041123 发表于 2018-4-27 17:13:45

你好,请问一下,直接在VS工程下配置不能完成吗
页: [1]
查看完整版本: VFH_recognition实例运行CMAKE和VS都报错