小编hap*_*app的帖子

Rcpp:安装带有静态库的包,以便独立于平台使用

我想在 R 包中使用libDAI C++库并想要该包:

  1. 可在 Linux 和 Windows 上使用
  2. 节省磁盘空间(外部库有约 60 Mb)
  3. 最终用户不需要安装boost和gmp进行编译

我当前的设置是:

  • 预编译 libDAI
    • 将 libdai.a 复制到 lib/
    • 将所有 libDAI 头文件复制到 inst/include
  • 将 Makevar 添加到 src/

修改Makevar文件:

# include libraries
PKG_CPPFLAGS =-I../inst/include/
PKG_LIBS = -Llib -l../lib/libdai.a
Run Code Online (Sandbox Code Playgroud)

我用于访问 libDAI 库的脚本是(src/ 中的 test.cpp):

#include <dai/factorgraph.h>
#include <Rcpp.h>
#include <cmath>

using namespace Rcpp;
using namespace std;
using namespace dai;

//'
//' Creates libDAI factor graph object
//'
//' @param factor_graph character definition of the factor graph
//' @export
// [[Rcpp::export]] …
Run Code Online (Sandbox Code Playgroud)

c++ r static-libraries .a rcpp

2
推荐指数
1
解决办法
1465
查看次数

标签 统计

.a ×1

c++ ×1

r ×1

rcpp ×1

static-libraries ×1