我收到一个链接器错误,提示当我尝试使用 g++ 编译 RInside 示例文件时找不到符号。任何援助将不胜感激。
R 版本 2.13.1 安装在 Mac OS X 10.5 上。Rcpp 和 RInside 包含文件已复制到 usr/include 目录。R 头文件和库已使用 g++ 的 -I 和 -L 修饰符包含在内,如下所示:
$g++ -I/Library/Frameworks/R.framework/Headers -L/Library/Frameworks/R.framework/Libraries rinside_sample0.cpp
rinside_sample0.cpp 文件是 RInside 软件包提供的示例,如下所示:
// -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; tab-width: 8; -*-
//
// Simple example showing how to do the standard 'hello, world' using embedded R
//
// Copyright (C) 2009 Dirk Eddelbuettel
// Copyright (C) 2010 Dirk Eddelbuettel and Romain Francois
//
// GPL'ed
#include <RInside.h> // for the embedded R via RInside
int main(int argc, char *argv[]) {
RInside R(argc, argv); // create an embedded R instance
R["txt"] = "Hello, world!\n"; // assign a char* (string) to 'txt'
R.parseEvalQ("cat(txt)"); // eval the init string, ignoring any returns
exit(0);
}
当我尝试使用 g++ 编译时,出现错误,如下所示:
ld: symbol(s) not found for architecture x86_64
有人可以告诉我我做错了什么以及如何解决吗?任何援助将不胜感激。