object 'C_stri_join' not found - Using kni

2019-01-20 15:04发布

问题:

When using the knit button in Rstudio I get an error object 'C_stri_join' not found.

Here is an example:

---
title: "Sample Document"
output:
   html_document:
   toc: true
   theme: united
---

<!--
%\VignetteEngine{knitr::knitr}
%\VignetteIndexEntry{Basic test}
-->

Here we go

```{r}
x <- 1

str(x)
```

The error is as follows:

Error in stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE) : 
  object 'C_stri_join' not found
Calls: suppressPackageStartupMessages ... evaluate_call -> handle_output -> <Anonymous> -> str_c -> stri_c

This comes after a recent update of my R packages:

> sessionInfo()
R version 3.2.2 (2015-08-14)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1

locale:
[1] LC_COLLATE=English_United Kingdom.1252 
[2] LC_CTYPE=English_United Kingdom.1252   
[3] LC_MONETARY=English_United Kingdom.1252
[4] LC_NUMERIC=C                           
[5] LC_TIME=English_United Kingdom.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] htmltools_0.2.6 tools_3.2.2     yaml_2.1.13     rmarkdown_0.8.1
[5] digest_0.6.8   

The error seems to originate from the call to str in the R code chunk since the following works without error:

---
title: "Sample Document"
output:
  html_document:
    toc: true
    theme: united
---

<!--
%\VignetteEngine{knitr::knitr}
%\VignetteIndexEntry{Basic test}
-->

Here we go

```{r}
x <- 1

# str(x)
```

This is similar to this issue but little details are given there.

回答1:

This was fixed by simply re-installing the stringi package.