Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pablrod/p5-alien-xgboost
Alien package to find, and build if necessary XGBoost library
https://github.com/pablrod/p5-alien-xgboost
aliens perl xgboost
Last synced: about 2 months ago
JSON representation
Alien package to find, and build if necessary XGBoost library
- Host: GitHub
- URL: https://github.com/pablrod/p5-alien-xgboost
- Owner: pablrod
- Created: 2017-08-17T20:45:47.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2017-09-10T17:10:24.000Z (over 7 years ago)
- Last Synced: 2024-11-18T20:14:54.512Z (about 2 months ago)
- Topics: aliens, perl, xgboost
- Language: Perl
- Size: 27.3 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: Changes
Awesome Lists containing this project
README
# NAME
Alien::XGBoost - Alien package to find, and build if necessary XGBoost dynamic library
# VERSION
version 0.05
# SYNOPSIS
```perl
use Alien::XGBoost;
use FFI::Platypus;my $ffi = FFI::Platypus->new;
$ffi->lib(Alien::XGBoost->dynamic_libs);
$ffi->attach(XGBGetLastError => [] => 'string');
my $error = XGBGetLastError();
```# DESCRIPTION
Alien package to find, and build if necessary XGBoost dynamic library.
[![Build Status](https://travis-ci.org/pablrod/p5-Alien-XGBoost.png?branch=master)](https://travis-ci.org/pablrod/p5-Alien-XGBoost)
[![Build status](https://ci.appveyor.com/api/projects/status/nl46f64tjiyaveql/branch/master?svg=true)](https://ci.appveyor.com/project/pablrod/p5-alien-xgboost/branch/master)This module is to be used by other modules that need the XGBoost
dynamic library available, indeed I've made this for [AI::XGBoost](https://metacpan.org/pod/AI::XGBoost).If you only want to use XGBoost in your perl programns, just use
[AI::XGBoost](https://metacpan.org/pod/AI::XGBoost) and forget this module. If you want to make other XGBoost
wrappers or use from XS then continue reading.By now there is no support for compiling your modules against XGBoost.
Just using the dynamic library via [FFI::Platypus](https://metacpan.org/pod/FFI::Platypus) or [NativeCall](https://metacpan.org/pod/NativeCall).## Troubleshooting
The "instructions" to build and install as a module are in the [alienfile](https://metacpan.org/pod/alienfile).
Lots of things can go wrong, and in that case, I'm glad to help, just open an
issue [https://github.com/pablrod/p5-Alien-XGBoost](https://github.com/pablrod/p5-Alien-XGBoost).But this information could be useful:
- Downloading
XGBoost doesn't make releases often [https://github.com/dmlc/xgboost/releases](https://github.com/dmlc/xgboost/releases) (last one from 2016)
So I'm cloning branch master.XGBoost uses git modules, so I need a recursive clone.
- Installing
XGBoost cmake doesn't provide a install target for the generated Makefiles, so this module
is copying the dynamic library and the xgboost command to the module share dirIf installation is succesfull you can query the module [Alien::XGBoost](https://metacpan.org/pod/Alien::XGBoost) to know where is
the dynamic library and command in your system# SEE ALSO
- [https://github.com/dmlc/xgboost](https://github.com/dmlc/xgboost)
- [Alien::Build](https://metacpan.org/pod/Alien::Build)
- [alienfile](https://metacpan.org/pod/alienfile)
- [AI::XGBoost](https://metacpan.org/pod/AI::XGBoost)
- [FFI::Platypus](https://metacpan.org/pod/FFI::Platypus)
- [NativeCall](https://metacpan.org/pod/NativeCall)# ACKNOWLEDGEMENTS
Thanks to Graham Ollis for all the support and making so many great modules
that make easier to make Alien's:- [Alien::Build](https://metacpan.org/pod/Alien::Build)
- [Alien::Build::Plugin::Build::CMake](https://metacpan.org/pod/Alien::Build::Plugin::Build::CMake)
- [FFI::CheckLib](https://metacpan.org/pod/FFI::CheckLib)# AUTHOR
Pablo Rodríguez González
# COPYRIGHT AND LICENSE
Copyright (c) 2017 by Pablo Rodríguez González.