2013-01-09 7 views
2

Eclipse를 설정하여 C 프로젝트를 비롯하여 C++ 코드가 포함 된 패키지를 작성할 수있는 방법을 찾으려고합니다.Eclipse/Statet에 C++ 코드를 포함하는 R 패키지 작성하기

물론 별도의 R 및 C++ 프로젝트를 만들고 C++ 코드를 컴파일하고 .dll을 R 프로젝트로 복사 한 다음 dyn.load 함수를 사용하여 R에서 사용할 수 있지만 무엇을 포함하고있는 R 패키지를 빌드하고 싶습니다. C++ 소스 코드? 다시 C + +와 R 프로젝트를 분리하여 C++ 코드를 내 R 패키지의 src 폴더에 복사하면 Statet perspective 내에서 R 패키지 빌더를 사용하면 올바르게 작동 할 것 같습니까? 그러나 나는 하나의 R 패키지 프로젝트를 만들고 그 프로젝트 안에 C++ 코드를 내장하여 C++ 관점의 이점을 얻을 수 있는지 궁금합니다. 코드 등의 색상 코딩

나는 누군가가 Rcpp에 대해 언급 할 것임을 알고 있지만, 여기서는 선택할 수 없다. 나는 C++을 배우려고 노력하고 있는데, 먼저 R과 힘을 합치는 방법을 강구합니다.

저는 Linux와 Windows를 모두 사용하고 있습니다.

편집 : 예를 들어, Eclipse를 설정하여 R과 C++ 코드를 동시에 이해할 수 있는지 알고 싶습니다. 두 코드 모두 색상 코딩 등이 있습니다.

+0

Rcpp가 옵션이 아닌 이유는 무엇입니까? RStudio는 Rcpp와 좋은 R/C++ 통합을 가지고 있습니다. http://www.rstudio.com/ide/docs/advanced/using_rcpp –

+0

이미 Fortran 프로그램에 Eclipse를 사용하고 있으며 모든 프로그래밍 작업에 동일한 IDE를 사용하고 싶습니다. – Jouni

+0

오케이, 그래서 나는 StatET 만 이해합니다. 행운을 빕니다! –

답변

2

편집자 전쟁의 팬만큼이나 다른 사람과 마찬가지지만 오해하고 있습니다. 당신이 쓴 것을 가져 가십시오 :

저는 C++을 배우려고 노력하고 있습니다. 그리고 그것을 R과 단단한 방법으로 결합하는 방법은 입니다.

"R 확장자 쓰기"를주의 깊게 읽고 예제를 다시 실행하십시오. 명령 줄에서. 그런 다음 Makefile을 사용하는 방법을 배웁니다.

코드컴파일러 호출입니다. 컴파일러를 호출하는 방법이나 코드를 작성하는 방법을 이해하지 못한다면 vi, Emacs 또는 Eclipse로 코드를 작성하는지 여부는 중요하지 않습니다. 그러므로 당신의 의도는 옳습니다.이 기초를 배우십시오.

일단 모든 plumming을 수행하면 Eclipse/StatET 구성에 적절한 선언을 삽입 할 준비가 된 것입니다. (당신은 내가 RInside 패키지에 기여 cmake 파일에 당신을 가리킬 수 있습니다. 속임수 싶다면)

이 좋아

+0

좋아, 어쩌면 내가 더 조심스럽게 작성했거나 Rcpp 전체 부분을 버렸어 야했다. 현재 Rcpp에 관심이없는 이유는 C++ 및 R에서 통계 프로그래밍에 대한 세미나를 가질 예정이며 이에 대한 특정 자료 (Rcpp는 다루지 않음)를 따르기를 원합니다. 참가자 대부분은 C++에 대해 알지 못하므로 코스의 일부는 C++를 배우는 것이고 다른 부분은 이러한 C++ 코드를 R 또는 다른 방법으로 통합하는 방법을 배우는 것입니다. – Jouni

+0

정확하게 이해했다면, Rcpp를 사용하면이 작업이 더 쉬워집니다.하지만 고전적인 방법으로 먼저이 작업을 수행하는 방법을 알고 있으면 유용하다고 생각합니다. 나중에 우리가 시간이 있다면, 우리는 Rcpp를 검사 할 수 있고, 그러면 그들은 Rcpp을 더 appriciate 할 것입니다. ;) – Jouni

+0

그럼 내 질문은 정말 내가 R과 C++ 코드를 동시에 이해할 수 있도록 Eclipse를 어떻게 사용할 수 있는가에 관한 것이다. 이클립스는 세미나 참가자 중 대부분이 이미 순수한 R을 쓸 때 이미 사용하고 있기 때문입니다. – Jouni

0

내가 가난 몇 가지 문제가 발생하는 이클립스를 설치 한 것으로 보인다. 내 질문에 대한 대답은 내가 Statet 관점에서 작업 할 수 있으며 파일 확장명이 .c 또는 .cpp 형식 인 경우 C++ 코드를 자동으로 이해한다는 것입니다. 그런 다음 코드가 일부 패키지의 일부인 경우 R CMD SHLIB 또는 R CMD INSTALL을 사용하여 코드를 컴파일 할 수 있습니다.