2014-10-21 3 views
0

Rcpp::sourceCpp을 절대 경로가 아닌 C++ 파일에 대한 상대 경로로 어떻게 호출 할 수 있습니까? 나는 절대 경로로 Rcpp:sourceCpp 전화 R CMD checktestthat 일 모두 :Rcpp :: sourceCpp의 상대 파일 경로

Rcpp::sourceCpp("/home/jeff/MiniMiniMaxUQ/src/MiniMiniMaxUQ.cpp") 

하지만 system.path 또는

Rcpp::sourceCpp("../src/MiniMiniMaxUQ.cpp") 

같은 상대 경로를 사용하려고 할 때 내 패키지 R CMD check를 통과하지 않는 C++ 소스 때문에 파일을 찾을 수 없습니다. 이런 종류의 일을하는 표준 방법이 있어야하는 것처럼 보이지만, 나는 그것을 모른다. 나는 약간의 도움에 크게 감사 할 것입니다.

+2

이 있습니다 케빈은 암시했다. –

답변

4

.cpp 파일이 이미 src/ 인 경우 여기에서 sourceCpp을 사용하고 계십니까? 명시 적으로 .Call을 사용하여 컴파일 된 코드를 호출하는 것은 어떻습니까?

당신이 정말로 동적 sourceCpp를 호출 할 경우에 당신은 Rcpp에서 테스트 인프라를 볼 수 있습니다 다음 cpp/https://github.com/RcppCore/Rcpp/tree/master/inst/unitTests

.cpp 파일 Rcpp::sourceCpp 에드, 그리고 노출 기능이 runit.*에서 테스트를 실행하는 데 사용되는 파일.

그러나

이 별도의 .cpp 파일 (즉, 그들은 inst/ 하위 디렉토리에있어이 아닌 src/ 폴더)를 @로 처음부터 패키지에`sourceCpp을()`를 사용해서는 안