mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2025-01-19 14:07:01 +01:00
gnu: Add ceres-solver.
* gnu/packages/maths.scm (ceres): New variable.
This commit is contained in:
parent
4b4e1b4b26
commit
f9940ef1e8
1 changed files with 49 additions and 0 deletions
|
@ -613,6 +613,55 @@ (define-public ipopt
|
|||
interfaces.")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public ceres
|
||||
(package
|
||||
(name "ceres-solver")
|
||||
(version "1.11.0")
|
||||
(home-page "http://ceres-solver.org/")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append home-page "ceres-solver-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0i7qkbf8g6pd8arxzldppga26ckv93y8zldsfz6wbd4n6b1nqrjd"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
;; TODO: Build HTML user documentation and install separately.
|
||||
;; XXX: Use the embedded "miniglog" as a replacement for
|
||||
;; <https://github.com/google/glog>. TODO: Use Glog when it's available.
|
||||
'(#:configure-flags '("-DMINIGLOG=ON"
|
||||
"-DBUILD_EXAMPLES=OFF"
|
||||
"-DBUILD_SHARED_LIBS=ON")
|
||||
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-before 'configure 'set-library-directory
|
||||
(lambda _
|
||||
;; Install libraries to lib/, not lib64/.
|
||||
(substitute* "internal/ceres/CMakeLists.txt"
|
||||
(("set\\(LIB_SUFFIX \"64\"\\)")
|
||||
"set(LIB_SUFFIX \"\")"))
|
||||
#t)))))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("eigen" ,eigen)
|
||||
("blas" ,openblas)
|
||||
("lapack" ,lapack)
|
||||
("suitesparse" ,suitesparse)
|
||||
("gflags" ,gflags)))
|
||||
(synopsis "C++ library for solving large optimization problems")
|
||||
(description
|
||||
"Ceres Solver is a C++ library for modeling and solving large,
|
||||
complicated optimization problems. It is a feature rich, mature and
|
||||
performant library which has been used in production since 2010. Ceres Solver
|
||||
can solve two kinds of problems:
|
||||
@enumerate
|
||||
@item non-linear least squares problems with bounds constraints;
|
||||
@item general unconstrained optimization problems.
|
||||
@end enumerate\n")
|
||||
(license license:bsd-3)))
|
||||
|
||||
;; For a fully featured Octave, users are strongly recommended also to install
|
||||
;; the following packages: texinfo, less, ghostscript, gnuplot.
|
||||
(define-public octave
|
||||
|
|
Loading…
Reference in a new issue