1

我试图在 Windows 上安装 CatBoost R 包,但没有成功。我已经阅读了所有说明以及stackoverflow帖子。

到目前为止,我所管理的是安装 python 和 VC++ 组件。

我可以编译包,但在安装时出现错误“TypeError:resolve_system_cxx() 恰好需要 4 个参数(给定 3 个)”。我正在搜索 CatBoost 存储库,但无法识别该函数的源文件。你能帮我进一步吗?

这是完整的日志

R version 3.3.3 (2017-03-06) -- "Another Canoe"
Copyright (C) 2017 The R Foundation for Statistical Computing
Platform: x86_64-w64-mingw32/x64 (64-bit)

R ist freie Software und kommt OHNE JEGLICHE GARANTIE.
Sie sind eingeladen, es unter bestimmten Bedingungen weiter zu verbreiten.
Tippen Sie 'license()' or 'licence()' für Details dazu.

R ist ein Gemeinschaftsprojekt mit vielen Beitragenden.
Tippen Sie 'contributors()' für mehr Information und 'citation()',
um zu erfahren, wie R oder R packages in Publikationen zitiert werden können.

Tippen Sie 'demo()' für einige Demos, 'help()' für on-line Hilfe, oder
'help.start()' für eine HTML Browserschnittstelle zur Hilfe.
Tippen Sie 'q()', um R zu verlassen.

Microsoft R Open 3.3.3
The enhanced R distribution from Microsoft
Microsoft packages Copyright (C) 2017 Microsoft Corporation

Using the Intel MKL for parallel mathematical computing(using 2 cores).

Default CRAN mirror snapshot taken on 2017-03-15.
See: https://mran.microsoft.com/.

> setwd("xxx/catboost/catboost/R-package")
> getwd()
[1] "xxx/catboost/catboost/R-package"
> library(devtools)
> devtools::build()
"xxx/x64/R" --no-site-file --no-environ --no-save --no-restore  \
  --quiet CMD build "xxx\catboost\catboost\R-package"  \
  --no-resave-data --no-manual

* checking for file 'xxx\catboost\catboost\R-package/DESC
RIPTION' ... OK
* preparing 'catboost':
* checking DESCRIPTION meta-information ... OK
* cleaning src
Warnung: xxx/AppData/Local/Temp/RtmpoNbm7g/Rbuild2b547ba45252/catb
oost/man/catboost.train.Rd:63: unknown macro '\t'
Warnung: xxx/Local/Temp/RtmpoNbm7g/Rbuild2b547ba45252/catb
oost/man/catboost.train.Rd:63: unknown macro '\t'
Warnung: xxx/Local/Temp/RtmpoNbm7g/Rbuild2b547ba45252/catb
oost/man/catboost.train.Rd:63: unknown macro '\t'
Warnung: xxx/Local/Temp/RtmpoNbm7g/Rbuild2b547ba45252/catb
oost/man/catboost.train.Rd:63: unknown macro '\t'
* checking for LF line-endings in source and make files
* checking for empty or unneeded directories
* building 'catboost_0.2.3.tar.gz'

[1] "xxx/catboost/catboost/catboost_0.2.3.tar.gz"
> devtools::install()
Installing catboost
"xxx/x64/R" --no-site-file --no-environ --no-save --no-restore  \
  --quiet CMD INSTALL  \
  "xxx/catboost/catboost/R-package"  \
  --library="xxx/library" --install-tests

* installing *source* package 'catboost' ...
** libs
  running 'src/Makefile.win' ...
/cygdrive/xxx/catboost/catboost/R-package/src/../../../ya.
bat make -r -o ../../..
Traceback (most recent call last):
  File "devtools/ya/entry/entry.py", line 157, in exit_interceptor
    func()
  File "devtools/ya/entry/entry.py", line 56, in <lambda>
    return lambda: wrapper(f)
  File "devtools/ya/entry/entry.py", line 121, in f
    res = func()
  File "devtools/ya/entry/entry.py", line 250, in <lambda>
    run_main = lambda: do_main(args)
  File "devtools/ya/entry/entry.py", line 49, in do_main
    res = handler.handle(handler, args, prefix=['ya'])
  File "devtools/ya/core/handler.py", line 157, in handle
    return handler.handle(self, args[1:], prefix + [name])
  File "devtools/ya/core/dispatch.py", line 37, in handle
    return self.command().handle(root_handler, args, prefix)
  File "devtools/ya/core/handler.py", line 337, in handle
    return self._action(params)
  File "devtools/ya/app.py", line 66, in helper
    return action(ctx.params)
  File "devtools/ya/build/build_handler.py", line 11, in do_ya_make
    return YaMake(params, app_ctx).go()
  File "devtools/ya/build/ya_make.py", line 523, in __init__
    self.ctx = Context(self.opts, app_ctx=app_ctx, graph=graph, tests=tests, con
figure_errors=configure_errors, make_files=make_files)
  File "devtools/ya/build/ya_make.py", line 352, in __init__
    self.graph, self.tests, self.configure_errors, self.make_files = _build_grap
h_and_tests(self.opts, app_ctx)
  File "devtools/ya/build/ya_make.py", line 244, in _build_graph_and_tests
    graph, tests, gh, make_files = lg.build_graph_and_tests(opts, check=True, ev
_listener=ev_listener)
  File "devtools/ya/build/graph.py", line 1343, in build_graph_and_tests
    host_tc = bg.gen_tc(host)
  File "devtools/ya/build/genconf.py", line 103, in gen_tc
    return _resolve_cxx(platform_name, platform_name)
  File "devtools/ya/build/genconf.py", line 73, in _resolve_cxx
    return resolve_system_cxx("cl.exe", host, target)
  File "devtools/ya/exts/func.py", line 60, in wrapper
    return get(args)
  File "devtools/ya/exts/func.py", line 54, in get
    memory[args] = func(*args)
TypeError: resolve_system_cxx() takes exactly 4 arguments (3 given)
make: *** [all] Error 1
Warnung: Ausführung von Kommando 'make --no-print-directory -f "Makefile.win"' e
rgab Status 2
ERROR: compilation failed for package 'catboost'
* removing 'xxx/library/catboost'
Fehler: Command failed (1)
>

我正在使用 Windows 7 和 python (3.6) 的 64 位版本,以及 R (3.3) 的 Microsoft 发行版和 R 工具 3.4 来构建包。

干杯安德烈

4

0 回答 0