Bayesian Coherent Point Drift (BCPD)编译教程

论文地址:

https://ieeexplore.ieee/document/9918058

github地址:

https://github/ohirose/bcpd

编译过程

1. 依赖库下载

sudo apt install libevent-dev libhwloc-dev libibverbs-dev flex gfortran
sudo apt-get install openmpi-bin openmpi-common openmpi-doc libopenmpi-dev
sudo apt install cmake

2. lappack库下载安装

下载地址:https://netlib/lapack/#_lapack_version_3_10_1_2

下载后执行以下脚本

tar -xvf lapack-3.10.1.tar.gz
mkdir build
cd build 
cmake ..
make -j4
sudo make install

3. bcpc源码编译

代码根目录添加CMakeList.txt文件,内容如下

cmake_minimum_required(VERSION 2.8)
project(bcpd LANGUAGES CXX C Fortran)
file(GLOB ALL_SOURCE "./register/*.cpp" "./register/*.c" "./base/*.cpp" "./base/*.c" )
file(GLOB ALL_HEAD "./register/*.hpp" "./register/*.h" "./base/*.hpp" "./base/*.h")
LINK_LIBRARIES(m)
add_executable(bcpd
    ${ALL_SOURCE}
    ${ALL_HEAD}
)
find_package(LAPACK REQUIRED)
find_package(OpenMP REQUIRED)
find_package(BLAS REQUIRED)
if(OpenMP_FOUND)
    target_link_libraries(bcpd OpenMP::OpenMP_CXX OpenMP::OpenMP_C lapack blas -lgfortran)
else()
    message(FATAL_ERROR "openmp not found!")
endif()

执行脚本

mkdir build
cd build 
cmake ..
make -j4

至此以编译完成,按照github readme执行即可,可执行程序在build中。
ps:执行速度实在是太慢了

更多推荐

Bayesian Coherent Point Drift (BCPD)编译教程