我正在使用R package
和devtools
撰写roxygen
。直到最近,事情一直很顺利,现在,当我做一些更改并尝试再次安装软件包时,我得到了一个非法的opcode error
。也许我做错了什么。通常我会更改我的包裹代码,然后执行以下操作来更新更改:
library("devtools")
library("roxygen2")
setwd("/Path/To/R/myPackage")
document()
setwd("..")
install("myPackage")
输出如下:
> document()
Updating ciiDE documentation
Loading ciiDE
Writing NAMESPACE
Writing NAMESPACE
> setwd("..")
> install("ciiDE")
Installing ciiDE
Running command /Library/Frameworks/R.framework/Resources/bin/R
Arguments:
CMD
INSTALL
/Path/To/R/myPackage
--library=/Library/Frameworks/R.framework/Versions/3.4/Resources/library
--install-tests
*** caught illegal operation ***
address 0x7fffc2344ae4, cause 'illegal opcode'
Traceback:
1: process_initialize(self, private, command, args, commandline, stdout, stderr, cleanup, echo_cmd, windows_verbatim_args, windows_hide_window)
2: .subset2(public_bind_env, "initialize")(...)
3: process$new(command, args, commandline, echo_cmd = echo_cmd, windows_verbatim_args = windows_verbatim_args, windows_hide_window = windows_hide_window, stdout = "|", stderr = "|")
4: run(bin, args = real_cmdargs, stdout_line_callback = real_callback(stdout), stderr_line_callback = real_callback(stderr), stdout_callback = real_block_callback, stderr_callback = real_block_callback, echo_cmd = echo, echo = show, spinner = spinner, error_on_status = fail_on_status, timeout = timeout)
5: force(code)
6: with_envvar(env, run(bin, args = real_cmdargs, stdout_line_callback = real_callback(stdout), stderr_line_callback = real_callback(stderr), stdout_callback = real_block_callback, stderr_callback = real_block_callback, echo_cmd = echo, echo = show, spinner = spinner, error_on_status = fail_on_status, timeout = timeout))
7: eval(substitute(expr), data, enclos = parent.frame())
8: eval(substitute(expr), data, enclos = parent.frame())
9: with.default(options, with_envvar(env, run(bin, args = real_cmdargs, stdout_line_callback = real_callback(stdout), stderr_line_callback = real_callback(stderr), stdout_callback = real_block_callback, stderr_callback = real_block_callback, echo_cmd = echo, echo = show, spinner = spinner, error_on_status = fail_on_status, timeout = timeout)))
10: with(options, with_envvar(env, run(bin, args = real_cmdargs, stdout_line_callback = real_callback(stdout), stderr_line_callback = real_callback(stderr), stdout_callback = real_block_callback, stderr_callback = real_block_callback, echo_cmd = echo, echo = show, spinner = spinner, error_on_status = fail_on_status, timeout = timeout)))
11: run_r(options)
12: callr::rcmd_safe(..., env = env)
13: with_build_tools(callr::rcmd_safe(..., env = env), required = required)
14: pkgbuild::rcmd_build_tools("INSTALL", c(built_path, opts), echo = !quiet, show = !quiet, fail_on_status = TRUE, required = FALSE)
15: install("myPackage")
我之前遇到过这个问题,并通过更新我的devtools
和roxygen
软件包修复了这个问题,但也许这根本不是解决方法。 导致此类错误的原因是什么?每次修改软件包代码时,我是否使用install()
错误地更新了软件包?
感谢任何帮助,对此有一点麻烦。