Скомпилируйте внешнюю библиотеку внутри пакета R - PullRequest
0 голосов
/ 03 сентября 2018

Я создаю пакет R с алгоритмами для порядковой и монотонной классификации данных, и у меня есть метод с именем svmop, который использует версию внешней библиотеки с именем libsvm-weights, которая реализована в C, но имеет оболочку Python.

Я использую эту библиотеку мысли Python, используя пакет reticulate, таким образом:

...
svmopredict<-function(models,test){
mysvm<-import_from_path("svmutil",system.file("python","python",package ="pkgName"))
pred<-mysvm$svm_predict(...)
...

, где svmutil находится в package/inst/python/python. Однако для этого на самом деле требуется встроенная общая библиотека. На самом деле у меня есть общая библиотека, созданная для linux и помещенная в package/inst/python, но, насколько мне известно, любая форма двоичных файлов неприемлема для CRAN.

Так есть ли способ указать пакет для компиляции этой библиотеки для Windows или Linux в зависимости от машины, на которой он устанавливается? или есть какой-то другой лучший способ сделать это, будучи приемлемым для CRAN?

...