我试图用gcc在Rmarkdown中运行C代码。当我尝试运行以下块时:

{R engine='c' engine.path='/usr/bin/gcc'}
#include <stdio.h>

int main()
{
    printf("hello, world\n"); // say hello world
}

我得到以下错误:Error: unexpected symbol in "int main"。我的gcc可执行文件有正确的路径,我也尝试过/usr/bin/clang。我在11英寸MacBook Air上使用Rstudio。

最佳答案

你真的想做什么?Rmarkdown无法为您构建带有main()的可执行文件,但它已经集成Rcpp很长时间了。
以下“只是工作”:

---
title: "RMarkdown Demo"
author: "Dirk"
date: "November 25, 2016"
output: html_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

## C++ Code

```{r engine='Rcpp'}
#include <Rcpp.h>

// [[Rcpp::export]]
int fibonacci(const int x) {
    if (x == 0 || x == 1) return(x);
    return (fibonacci(x - 1)) + fibonacci(x - 2);
}
```

## Deployed

```{r}
fibonacci(10L)
fibonacci(20L)
```

并创建我下面包含的内容。
c - 在Rmarkdown中将gcc用于C-LMLPHP

关于c - 在Rmarkdown中将gcc用于C,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40808946/

10-10 21:25