Giter Site home page Giter Site logo

rmath.jl's People

Contributors

andreasnoack avatar ararslan avatar dmbates avatar femtocleaner[bot] avatar juliatagbot avatar panlanfeng avatar quinnj avatar simonbyrne avatar staticfloat avatar tanmaykm avatar tkelman avatar tpapp avatar viralbshah avatar vtjnash avatar yuyichao avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rmath.jl's Issues

Travis 0.4 failure?

I'm seeing this

6.13s$ julia --color=yes -e "Pkg.build(\"${JL_PKG}\")"
INFO: Building Rmath
================================[ ERROR: Rmath ]================================
LoadError: UndefVarError: readstring not defined
while loading /home/travis/.julia/v0.4/Rmath/deps/build.jl, in expression starting on line 38

``

`qpois` can return non-integral values on some platforms

(pumas) pkg> st Rmath
      Status `~/Documents/progwork/julia/env/pumas/Project.toml`
  [79098fc4] Rmath v0.7.0

julia> Rmath.qpois(0.9, 2.3)
4.1250036826858425

julia> versioninfo()
Julia Version 1.6.2-pre.0
Commit dd122918ce* (2021-04-23 21:21 UTC)
Platform Info:
  OS: Linux (x86_64-generic-linux)
  CPU: Intel(R) Core(TM) i9-7900X CPU @ 3.30GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-11.0.1 (ORCJIT, skylake-avx512)

On another computer, it instead returns 4.0.
The fact that Int(4.12...) throws an InexactError means this breaks a few other functions.

The OS is a Linux distro (Clear Linux) and uses GLIBC. The computer where I tested this and it works correctly is Arch Linux (also with GLIBC). I'm not sure what could be going wrong, in both cases it should be using the same binary distributed by BinaryBuilder?

Move to JuliaStats

I'm mostly done with putting a BinDeps harness in place on my fork of this. May not need to keep the src here, but may as well conserve the METADATA namespace and make this the home of the BinDeps piece. Should this repo be transferred over to JuliaStats to give more people commit access? cc @simonbyrne @nalimilan

fatal error: math.h: No such file or directory

Trying to install Rmath package. I get the following error:

fatal error: math.h: No such file or directory

Full output below:

julia> Pkg.add("Rmath")
INFO: Installing BinDeps v0.4.5
INFO: Installing Rmath v0.1.6
INFO: Installing SHA v0.3.0
INFO: Installing URIParser v0.1.6
INFO: Building Rmath
INFO: Attempting to Create directory /data/julia/pkg/v0.5/Rmath/deps/downloads
INFO: Directory /data/julia/pkg/v0.5/Rmath/deps/downloads already created
INFO: Downloading file https://github.com/JuliaLang/Rmath-julia/archive/v0.1.tar.gz
INFO: Done downloading file https://github.com/JuliaLang/Rmath-julia/archive/v0.1.tar.gz
INFO: Attempting to Create directory /data/julia/pkg/v0.5/Rmath/deps/src
INFO: Directory /data/julia/pkg/v0.5/Rmath/deps/src already created
INFO: Attempting to Create directory /data/julia/pkg/v0.5/Rmath/deps
INFO: Directory /data/julia/pkg/v0.5/Rmath/deps already created
INFO: Path /data/julia/pkg/v0.5/Rmath/deps/src/Rmath-julia-0.1 already created
INFO: Attempting to Create directory /data/julia/pkg/v0.5/Rmath/deps/usr/lib
INFO: Directory /data/julia/pkg/v0.5/Rmath/deps/usr/lib already created
INFO: Changing Directory to /data/julia/pkg/v0.5/Rmath/deps/src/Rmath-julia-0.1
make -C src
make[1]: Entering directory '/data/julia/pkg/v0.5/Rmath/deps/src/Rmath-julia-0.1/src'
gcc  -Wall -O3 -fPIC -DMATHLIB_STANDALONE -I/data/julia/pkg/v0.5/Rmath/deps/dSFMT   -std=gnu99 -I../include -DNDEBUG -c bd0.c -o bd0.o
In file included from bd0.c:35:0:
nmath.h:35:18: fatal error: math.h: No such file or directory
compilation terminated.
Makefile:45: recipe for target 'bd0.o' failed
make[1]: *** [bd0.o] Error 1
make[1]: Leaving directory '/data/julia/pkg/v0.5/Rmath/deps/src/Rmath-julia-0.1/src'
Makefile:2: recipe for target 'all' failed
make: *** [all] Error 2
============================================================================[ ERROR: Rmath ]============================================================================

LoadError: failed process: Process(`make USE_DSFMT=1 DSFMT_includedir=/data/julia/pkg/v0.5/Rmath/deps/dSFMT DSFMT_libdir=/data/julia/bin/../lib/julia`, ProcessExited(2)) [2]
while loading /data/julia/pkg/v0.5/Rmath/deps/build.jl, in expression starting on line 43

========================================================================================================================================================================

============================================================================[ BUILD ERRORS ]============================================================================

WARNING: Rmath had build errors.

 - packages with build errors remain installed in /data/julia/pkg/v0.5
 - build the package(s) and all dependencies with `Pkg.build("Rmath")`
 - build a single package by running its `deps/build.jl` script

========================================================================================================================================================================
INFO: Package database updated
INFO: METADATA is out-of-date — you may not have the latest version of Rmath
INFO: Use `Pkg.update()` to get the latest versions of your packages

Precompiling Rmath error

julia> using Distributions
[ Info: Precompiling Distributions [31c24e10-a181-5473-b8eb-7969acd0382f]
ERROR: LoadError: InitError: could not load library "F:***.julia\artifacts\8c1c1529ea289add57db6b790a3039ba491acdce\bin\libRmath-julia.dll"
The specified module could not be found.

✗ Rmath
✗ StatsFuns
✗ Distributions

(@v1.6) pkg> status Distributions
Status F:\***\.julia\environments\v1.6\Project.toml
[31c24e10] Distributions v0.25.76
Long-term support (LTS) release: v1.6.7 and Current stable release: v1.8.2 have been tried and both have this problem.

Cannot build with 32-bit Julia on 64-bit linux

Currently we build the relevant library for the system architecture, not the Julia architecture. Not sure what the best solution is, particularly if people want to use both side-by-side.

I guess we could include the arch in the library name, e.g. libRmath-julia-linux-i686.so and libRmath-julia-linux-x86_64.so?

cc: @ViralBShah @andreasnoack

Cannot build on Ubuntu 16.04 + Julia 0.5.1

Julia was installed using the binary tar ball. When adding the Distributions package, Rmath was downloaded but cannot be built. Here is the error message.

Pkg.build("Rmath")
INFO: Building Rmath
INFO: Attempting to Create directory /home/ielm/.julia/v0.5/Rmath/deps/downloads
INFO: Directory /home/ielm/.julia/v0.5/Rmath/deps/downloads already created
INFO: Downloading file https://github.com/JuliaLang/Rmath-julia/archive/v0.1.tar.gz
INFO: Done downloading file https://github.com/JuliaLang/Rmath-julia/archive/v0.1.tar.gz
INFO: Attempting to Create directory /home/ielm/.julia/v0.5/Rmath/deps/src
INFO: Directory /home/ielm/.julia/v0.5/Rmath/deps/src already created
INFO: Attempting to Create directory /home/ielm/.julia/v0.5/Rmath/deps
INFO: Directory /home/ielm/.julia/v0.5/Rmath/deps already created
INFO: Path /home/ielm/.julia/v0.5/Rmath/deps/src/Rmath-julia-0.1 already created
INFO: Attempting to Create directory /home/ielm/.julia/v0.5/Rmath/deps/usr/lib
INFO: Directory /home/ielm/.julia/v0.5/Rmath/deps/usr/lib already created
INFO: Changing Directory to /home/ielm/.julia/v0.5/Rmath/deps/src/Rmath-julia-0.1
================================[ ERROR: Rmath ]================================

LoadError: could not spawn `make USE_DSFMT=1 DSFMT_includedir=/home/ielm/.julia/v0.5/Rmath/deps/dSFMT DSFMT_libdir=/home/ielm/julia/bin/../lib/julia`: no such file or directory (ENOENT)
while loading /home/ielm/.julia/v0.5/Rmath/deps/build.jl, in expression starting on line 43

================================================================================

================================[ BUILD ERRORS ]================================

WARNING: Rmath had build errors.

 - packages with build errors remain installed in /home/ielm/.julia/v0.5
 - build the package(s) and all dependencies with `Pkg.build("Rmath")`
 - build a single package by running its `deps/build.jl` script

================================================================================

does not build on v0.6-rc2

[ ERROR: Rmath ]

LoadError: failed process: Process(make USE_DSFMT=1 'DSFMT_includedir=/--/v0.6/Rmath/deps/dSFMT' 'DSFMT_libdir=/--/julia-06/bin/../lib/julia', ProcessExited(2)) [2]
while loading /media/jas/Shared Data(960 Pro)/jas/julia-06/packages/v0.6/Rmath/deps/build.jl, in expression starting on line 43

PackageEvaluator / status.julialang.org test results

##### Current package: Rmath
INFO: Cloning cache of Rmath from git://github.com/dmbates/Rmath.jl.git
INFO: Installing Rmath v0.0.0
INFO: REQUIRE updated.
ERROR: test not found
 in require at loading.jl:39
 in include at boot.jl:238
at /home/idunning/pkgtest/.julia/v0.2/Rmath/test/Rmath.jl:1
INFO: Removing Rmath v0.0.0
INFO: REQUIRE updated.

Not sure if this package is still being used anywhere, but thought I'd let you know.

Warning when using Distributions package

I got this warning when using HypothsisTests:

┌ Warning: Package Rmath does not have Libdl in its dependencies:
│ - If you have Rmath checked out for development and have
│ added Libdl as a dependency but haven't updated your primary
│ environment's manifest file, try Pkg.resolve().
│ - Otherwise you may need to report an issue with Rmath
└ Loading Libdl into Rmath from project dependency, future warnings for Rmath are suppressed.

Pkg.resolve() did not solve this warning.
I'm using julia 0.7.0 on macosx 10.13.6.

Issue intalling Rmath -- "nmath.h" not found"

I am trying to install and build Rmath on Julia v0.6.0. When I build I get this error. I've made sure that build-essentials is already installed (as some previous posts suggested). Any other ideas?


Pkg.build("Rmath")

INFO: Building Rmath
INFO: Attempting to Create directory /home/dsm/.julia/v0.6/Rmath/deps/downloads
INFO: Directory /home/dsm/.julia/v0.6/Rmath/deps/downloads already created
INFO: Downloading file https://github.com/JuliaLang/Rmath-julia/archive/v0.2.0.tar.gz
INFO: Done downloading file https://github.com/JuliaLang/Rmath-julia/archive/v0.2.0.tar.gz
INFO: Attempting to Create directory /home/dsm/.julia/v0.6/Rmath/deps/src
INFO: Directory /home/dsm/.julia/v0.6/Rmath/deps/src already created
INFO: Attempting to Create directory /home/dsm/.julia/v0.6/Rmath/deps
INFO: Directory /home/dsm/.julia/v0.6/Rmath/deps already created
INFO: Path /home/dsm/.julia/v0.6/Rmath/deps/src/Rmath-julia-0.2.0 already created
INFO: Attempting to Create directory /home/dsm/.julia/v0.6/Rmath/deps/usr/lib
INFO: Directory /home/dsm/.julia/v0.6/Rmath/deps/usr/lib already created
INFO: Changing Directory to /home/dsm/.julia/v0.6/Rmath/deps/src/Rmath-julia-0.2.0
dpois.c:35:19: fatal error: nmath.h: No such file or directory
compilation terminated.
make[1]: *** [dpois.o] Error 1
make: *** [all] Error 2
================================[ ERROR: Rmath ]================================

LoadError: failed process: Process(`make`, ProcessExited(2)) [2]
while loading /home/dsm/.julia/v0.6/Rmath/deps/build.jl, in expression starting on line 42

================================================================================

================================[ BUILD ERRORS ]================================

WARNING: Rmath had build errors.

 - packages with build errors remain installed in /home/dsm/.julia/v0.6
 - build the package(s) and all dependencies with `Pkg.build("Rmath")`
 - build a single package by running its `deps/build.jl` script

================================================================================

Use Homebrew on OS X?

I've created a Homebrew formula for libRmath-julia. I built and included a bottle (i.e. compiled binary) for OS X 10.10 Yosemite, so it doesn't have to build from source on that platform. I figured this would be nice to have for the BinDeps process but I don't understand BinDeps well enough to submit a PR to include it.

I would make bottles for other platforms but I'm on Yosemite. If anyone on another Mac OS is able and willing to run

brew install --build-bottle ararslan/pints/rmath-julia
brew bottle rmath-julia

then send me the resulting terminal output and .tar.gz, I can update the formula and add the binaries to my Bintray.

The formula is installable via

brew tap ararslan/pints
brew install rmath-julia

or just

brew install ararslan/pints/rmath-julia

I hope this proves useful! 🍻

`qbinom` gives incorrect answers at very small values

The behavior of qbinom as p approaches 0 is incorrect. The function becomes flat at a certain point, and then immediately jumps to the maximum value instead of continuing to increase stepwise.

               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.7.3 (2022-05-06)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

julia> using Rmath

julia> Rmath.qbinom.([-1e-14, -2e-15, -1e-16], 5e6, 6e-7, true, true)
3-element Vector{Float64}:
 24.0
 24.0
  5.0e6

In contrast, the equivalent expression in R gives the correct numbers:

> qbinom(c(-1e-14, -2e-15, -1e-16), 5e6, 6e-7, TRUE, TRUE)
[1] 24 25 26

I have not checked if this problem also occurs with other distributions.

Pkg not building in mac

Below is the error I am getting while doing Pkg.build("Rmath")

Pkg.build("Rmath")
INFO: Building Rmath
Info: Attempting to create directory /Users/anitbhandari/.julia/v0.6/Rmath/deps/downloads
Info: Directory /Users/anitbhandari/.julia/v0.6/Rmath/deps/downloads already exists
Info: Downloading file https://github.com/JuliaLang/Rmath-julia/archive/v0.2.0.tar.gz
Info: Done downloading file https://github.com/JuliaLang/Rmath-julia/archive/v0.2.0.tar.gz
Info: Attempting to create directory /Users/anitbhandari/.julia/v0.6/Rmath/deps/src
Info: Directory /Users/anitbhandari/.julia/v0.6/Rmath/deps/src already exists
Info: Attempting to create directory /Users/anitbhandari/.julia/v0.6/Rmath/deps
Info: Directory /Users/anitbhandari/.julia/v0.6/Rmath/deps already exists
Info: Path /Users/anitbhandari/.julia/v0.6/Rmath/deps/src/Rmath-julia-0.2.0 already exists
Info: Attempting to create directory /Users/anitbhandari/.julia/v0.6/Rmath/deps/usr/lib
Info: Directory /Users/anitbhandari/.julia/v0.6/Rmath/deps/usr/lib already exists
Info: Changing directory to /Users/anitbhandari/.julia/v0.6/Rmath/deps/src/Rmath-julia-0.2.0
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
=============================================================[ ERROR: Rmath ]=============================================================

LoadError: failed process: Process(`make`, ProcessExited(1)) [1]
while loading /Users/anitbhandari/.julia/v0.6/Rmath/deps/build.jl, in expression starting on line 47

==========================================================================================================================================

=============================================================[ BUILD ERRORS ]=============================================================

WARNING: Rmath had build errors.

 - packages with build errors remain installed in /Users/anitbhandari/.julia/v0.6
 - build the package(s) and all dependencies with `Pkg.build("Rmath")`
 - build a single package by running its `deps/build.jl` script

==========================================================================================================================================

Below is the versioninfo

Julia Version 0.6.2
Commit d386e40c17 (2017-12-13 18:08 UTC)
Platform Info:
  OS: macOS (x86_64-apple-darwin14.5.0)
  CPU: Intel(R) Core(TM) i5-4308U CPU @ 2.80GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Haswell)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.9.1 (ORCJIT, haswell)

TypeError in deprecation causing failure to load

               _
   _       _ _(_)_     |  A fresh approach to technical computing
  (_)     | (_) (_)    |  Documentation: https://docs.julialang.org
   _ _   _| |_  __ _   |  Type "?help" for help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 0.7.0-DEV.1272 (2017-08-07 19:05 UTC)
 _/ |\__'_|_|_|\__'_|  |  Commit 4e28870021* (0 days old master)
|__/                   |  x86_64-apple-darwin16.7.0

julia> Pkg.build("Rmath")
[a wave of BinDeps deprecations but no failure]

julia> using Rmath
INFO: Recompiling stale cache file /Users/alex/.julia/lib/v0.7/Rmath.ji for module Rmath.
ERROR: LoadError: TypeError: in @deprecate, in typeassert, expected Symbol, got Expr
Stacktrace:
 [1] include_relative(::Module, ::String) at ./loading.jl:464
 [2] include(::Module, ::String) at ./sysimg.jl:14
 [3] anonymous at ./<missing>:2
while loading /Users/alex/.julia/v0.7/Rmath/src/Rmath.jl, in expression starting on line 235
ERROR: Failed to precompile Rmath to /Users/alex/.julia/lib/v0.7/Rmath.ji.
Stacktrace:
 [1] compilecache(::String) at ./loading.jl:598
 [2] _require(::Symbol) at ./loading.jl:387
 [3] require(::Symbol) at ./loading.jl:318

julia> Pkg.status("Rmath")
 - Rmath                         0.2.0

Build error installing RMath Ubuntu 17.04, Julia 0.5.2

I get the following build error when attempting to install RMath.jl:

> julia
               _
   _       _ _(_)_     |  A fresh approach to technical computing
  (_)     | (_) (_)    |  Documentation: https://docs.julialang.org
   _ _   _| |_  __ _   |  Type "?help" for help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 0.5.2 (2017-05-06 16:34 UTC)
 _/ |\__'_|_|_|\__'_|  |  Official http://julialang.org/ release
|__/                   |  x86_64-pc-linux-gnu

julia> Pkg.build("Rmath")
INFO: Building Rmath
INFO: Attempting to Create directory /home/nick/.julia/v0.5/Rmath/deps/downloads
INFO: Directory /home/nick/.julia/v0.5/Rmath/deps/downloads already created
INFO: Downloading file https://github.com/JuliaLang/Rmath-julia/archive/v0.1.tar.gz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (77) error setting certificate verify locations:
  CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none
=========================================================================================[ ERROR: Rmath ]==========================================================================================

LoadError: failed process: Process(`curl -f -o /home/nick/.julia/v0.5/Rmath/deps/downloads/v0.1.tar.gz -L https://github.com/JuliaLang/Rmath-julia/archive/v0.1.tar.gz`, ProcessExited(77)) [77]
while loading /home/nick/.julia/v0.5/Rmath/deps/build.jl, in expression starting on line 43

===================================================================================================================================================================================================

=========================================================================================[ BUILD ERRORS ]==========================================================================================

WARNING: Rmath had build errors.

 - packages with build errors remain installed in /home/nick/.julia/v0.5
 - build the package(s) and all dependencies with `Pkg.build("Rmath")`
 - build a single package by running its `deps/build.jl` script

===================================================================================================================================================================================================

TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.

If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.

If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Build Fails on macOS

Hello,

When building Rmath I get an error: "No rule to make target qlnorm.o', needed by libRmath-julia.dylib'.". Running Pkg.rm("Rmath") and then Pkg.add("Rmath") does not fix the issue.

I'm on macOS 10.12.5, here is the output from versioninfo:

Julia Version 0.6.0
Commit 903644385b (2017-06-19 13:05 UTC)
Platform Info:
  OS: macOS (x86_64-apple-darwin13.4.0)
  CPU: Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Haswell)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.9.1 (ORCJIT, haswell)

Julia was installed through brew cask, if that matters.

Problem building Rmath on macOS

Hi I am really new to Julia and trying to run a script when asked to build Rmath:

ERROR: LoadError: Rmath not properly installed. Please run Pkg.build("Rmath") and restart julia Stacktrace: [1] error(::String) at ./error.jl:21 [2] include_from_node1(::String) at ./loading.jl:576 [3] include(::String) at ./sysimg.jl:14 [4] anonymous at ./<missing>:2 while loading /Users/Delta/.julia/v0.6/Rmath/src/Rmath.jl, in expression starting on line 17

When I type Pkg.build("Rmath") into Julia I get the following errors

/Applications/Xcode.app/Contents/Developer/usr/bin/make -C src gcc -Wall -O3 -fPIC -DMATHLIB_STANDALONE -std=gnu99 -I../include -DNDEBUG -c bd0.c -o bd0.o FATAL:/opt/local/bin/../libexec/as/x86_64/as: I don't understand 'm' flag! make[1]: *** [bd0.o] Error 1 make: *** [all] Error 2

================[ ERROR: Rmath ]================================

LoadError: failed process: Process(`make`, ProcessExited(2)) [2]
while loading /Users/Delta/.julia/v0.6/Rmath/deps/build.jl, in expression starting on line 47

================[ BUILD ERRORS ]================================

WARNING: Rmath had build errors.

 - packages with build errors remain installed in /Users/Delta/.julia/v0.6
 - build the package(s) and all dependencies with `Pkg.build("Rmath")`
 - build a single package by running its `deps/build.jl` script

After a bit of search online, the solution for linux seems to be installing build-essential. However, I have the macOS High Sierra and have installed the Xcode command line. Any help with building the Rmath package would be highly appreciated. Thanks.

Cannot build Rmath - could not create SSL/TLS secure channel

Hi, I am a super beginner, running Julia 0.5.2 on Windows 10. While trying to add/build Rmath i run into the following problem:

INFO: Installing Rmath v0.2.0
INFO: Building Rmath
INFO: Attempting to Create directory C:\Users\ezgik\.julia\v0.5\Rmath\deps\downloads
INFO: Downloading file https://github.com/JuliaLang/Rmath-julia/releases/download/v0.2.0/libRmath-julia-win-x86_64-v0.2.0.zip
Exception calling "DownloadFile" with "2" argument(s): "The request was aborted: Could not create SSL/TLS secure channel."
At line:1 char:1
+ (new-object net.webclient).DownloadFile("https://github.com/JuliaLang ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : WebException

===================================================================================================[ ERROR: Rmath ]====================================================================================================

LoadError: failed process: Process(`'C:\Windows\System32\WindowsPowerShell\v1.0\powershell' -NoProfile -Command '(new-object net.webclient).DownloadFile("https://github.com/JuliaLang/Rmath-julia/releases/download/v0.2.0/libRmath-julia-win-x86_64-v0.2.0.zip", "C:\Users\ezgik\.julia\v0.5\Rmath\deps\downloads\libRmath-julia-win-x86_64-v0.2.0.zip")'`, ProcessExited(1)) [1]
while loading C:\Users\ezgik\.julia\v0.5\Rmath\deps\build.jl, in expression starting on line 42

=======================================================================================================================================================================================================================

===================================================================================================[ BUILD ERRORS ]====================================================================================================

WARNING: Rmath had build errors.

 - packages with build errors remain installed in C:\Users\ezgik\.julia\v0.5
 - build the package(s) and all dependencies with `Pkg.build("Rmath")`
 - build a single package by running its `deps/build.jl` script

=======================================================================================================================================================================================================================
INFO: Package database updated

I'd be really glad if someone could help.

reinstallation Julia

I have tried to delete and to reinstall Julia, because OpenCL package didn't work, so I did it in order to understand if it was due to some bad installation problem. But when I tried to reinstall Julia, it gave me problems for the building of other packages, including this. How can I fix it?
rmath

fatal error: sys/cdefs.h: No such file or directory

In building Rmath, I get the following error:

INFO: Building Rmath
make -C src
INFO: Attempting to Create directory /Users/rohan/.julia/v0.5/Rmath/deps/downloads
INFO: Directory /Users/rohan/.julia/v0.5/Rmath/deps/downloads already created
INFO: Downloading file https://github.com/JuliaLang/Rmath-julia/archive/v0.1.tar.gz
INFO: Done downloading file https://github.com/JuliaLang/Rmath-julia/archive/v0.1.tar.gz
INFO: Attempting to Create directory /Users/rohan/.julia/v0.5/Rmath/deps/src
INFO: Directory /Users/rohan/.julia/v0.5/Rmath/deps/src already created
INFO: Attempting to Create directory /Users/rohan/.julia/v0.5/Rmath/deps
INFO: Directory /Users/rohan/.julia/v0.5/Rmath/deps already created
INFO: Path /Users/rohan/.julia/v0.5/Rmath/deps/src/Rmath-julia-0.1 already created
INFO: Attempting to Create directory /Users/rohan/.julia/v0.5/Rmath/deps/usr/lib
INFO: Directory /Users/rohan/.julia/v0.5/Rmath/deps/usr/lib already created
INFO: Changing Directory to /Users/rohan/.julia/v0.5/Rmath/deps/src/Rmath-julia-0.1
gcc -Wall -O3 -fPIC -DMATHLIB_STANDALONE -I/Users/rohan/.julia/v0.5/Rmath/deps/dSFMT -std=gnu99 -I../include -DNDEBUG -c bd0.c -o bd0.o
gcc: warning: couldn’t understand kern.osversion ‘16.1.0
In file included from nmath.h:35:0,
from bd0.c:35:
/usr/local/lib/gcc/x86_64-apple-darwin12.5.0/4.8.1/include-fixed/math.h:53:23: fatal error: sys/cdefs.h: No such file or directory
#include <sys/cdefs.h>
^
compilation terminated.
make[1]: *** [bd0.o] Error 1
make: *** [all] Error 2
================================[ ERROR: Rmath ]================================

LoadError: failed process: Process(make USE_DSFMT=1 DSFMT_includedir=/Users/rohan/.julia/v0.5/Rmath/deps/dSFMT DSFMT_libdir=/Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia, ProcessExited(2)) [2]
while loading /Users/rohan/.julia/v0.5/Rmath/deps/build.jl, in expression starting on line 39

================================================================================

================================[ BUILD ERRORS ]================================

WARNING: Rmath had build errors.

  • packages with build errors remain installed in /Users/rohan/.julia/v0.5
  • build the package(s) and all dependencies with Pkg.build("Rmath")
  • build a single package by running its deps/build.jl script

================================================================================

make build fails with below error

aliasing -Wno-error=sequence-point -Wno-error=switch -Wno-pointer-sign -fgnu89-inline -Wno-unused-const-variable -Wno-deprecated-declarations -Wno-error=frame-address -D__LP64_KERNEL__ -Wstrict-prototypes -I../../tpd-include -c getpw.c -MD -MF getpw.d -o getpw.o
getpw.c:25:23: fatal error: audit_lib.h: No such file or directory
#include <audit_lib.h>
^
compilation terminated.
../../Makefile.declare:286: recipe for target 'getpw.o' failed
make[4]: *** [getpw.o] Error 1
make[4]: Leaving directory '/export/ws/ws1/sam/RM/tpdsrc/umod/auth_helper_nss'
make[4]: *** Waiting for unfinished jobs....

Build Rmath takes forever

I seem to have issues building Rmath. After having waited several minutes after the output
INFO: Building Rmath and interrupting the process, I get the following stack trace. Is this supposed to take several minutes or is something wrong?

julia> Pkg.add("Rmath")
INFO: Installing Rmath v0.2.0
INFO: Building Rmath
^CERROR (unhandled task failure): InterruptException:
Stacktrace:
 [1] process_events at ./libuv.jl:82 [inlined]
 [2] wait() at ./event.jl:216
 [3] wait(::Condition) at ./event.jl:27
 [4] stream_wait(::Timer, ::Condition, ::Vararg{Condition,N} where N) at ./stream.jl:42
 [5] wait(::Timer) at ./event.jl:357
 [6] (::Base.##300#301{PyCall.##7#8{PyCall.PyObject},Timer})() at ./event.jl:430
ERROR: InterruptException:
Stacktrace:
 [1] try_yieldto(::Base.##296#297{Task}, ::Task) at ./event.jl:189
 [2] wait() at ./event.jl:234
 [3] wait(::Condition) at ./event.jl:27
 [4] wait(::Task) at ./task.jl:181
 [5] sync_end() at ./task.jl:274
 [6] macro expansion at ./task.jl:303 [inlined]
 [7] add(::String, ::Base.Pkg.Types.VersionSet) at ./pkg/entry.jl:51
 [8] (::Base.Pkg.Dir.##4#7{Array{Any,1},Base.Pkg.Entry.#add,Tuple{String}})() at ./pkg/dir.jl:36
 [9] cd(::Base.Pkg.Dir.##4#7{Array{Any,1},Base.Pkg.Entry.#add,Tuple{String}}, ::String) at ./file.jl:70
 [10] #cd#1(::Array{Any,1}, ::Function, ::Function, ::String, ::Vararg{String,N} where N) at ./pkg/dir.jl:36
 [11] add(::String) at ./pkg/pkg.jl:117
julia> versioninfo()
Julia Version 0.6.0
Commit 9036443 (2017-06-19 13:05 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Haswell)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.9.1 (ORCJIT, haswell)

julia> Pkg.status("Rmath")
 - Rmath                         0.2.0

GPL/MIT licensing issue

Hi there!

@nassarhuda and I and others are looking to use GLM.jl in one of our projects, but we noticed that GLM.jl, which is licensed as MIT, depends on this package (also licensed as MIT), but then this package depends on the binary package Rmath_jll, which must be licensed GPL, as the Rmath-julia sources for that package are GPLv2.0.

Now, I am definitely not a lawyer, but based on my understanding of licensing, I think that this package must also be licensed under the GPL? I suppose (but am not sure) that it would be sufficient to leave this package under the MIT license, but point out in LICENSE.md that Rmath_jll is GPL-licensed and thus any derivative works that depend on Rmath.jl must also be distributed under the terms of the GPL.

In any case, this seems like it has significant implications downstream, as core packages like StatsFuns.jl have a dependency graph that involves this package and also Rmath_jll, and so all of those would also need to note that they are transitively under the terms of the GPL too. (This includes TensorFlow.jl too, it seems, judging by the dependency list.)

Let me know what you think. At least for us, we can't use GLM.jl (or anything else that depends on this) with this licensing issue present.

Thanks!

[PackageEvaluator.jl] Your package Rmath may have a testing issue.

This issue is being filed by a script, but if you reply, I will see it.

PackageEvaluator.jl is a script that runs nightly. It attempts to load all Julia packages and run their test (if available) on both the stable version of Julia (0.2) and the nightly build of the unstable version (0.3).

The results of this script are used to generate a package listing enhanced with testing results.

The status of this package, Rmath, on...

  • Julia 0.2 is 'Tests fail, but package loads.' PackageEvaluator.jl
  • Julia 0.3 is 'Tests fail, but package loads.' PackageEvaluator.jl

'No tests, but package loads.' can be due to their being no tests (you should write some if you can!) but can also be due to PackageEvaluator not being able to find your tests. Consider adding a test/runtests.jl file.

'Package doesn't load.' is the worst-case scenario. Sometimes this arises because your package doesn't have BinDeps support, or needs something that can't be installed with BinDeps. If this is the case for your package, please file an issue and an exception can be made so your package will not be tested.

This automatically filed issue is a one-off message. Starting soon, issues will only be filed when the testing status of your package changes in a negative direction (gets worse). If you'd like to opt-out of these status-change messages, reply to this message.

Can not build Rmath

I have tried to build Rmath and run into a segmentation fault.

julia> Pkg.build("Rmath")
INFO: Building Rmath
INFO: Attempting to Create directory /Users/mcawte/.julia/v0.6/Rmath/deps/downloads
INFO: Directory /Users/mcawte/.julia/v0.6/Rmath/deps/downloads already created
INFO: Downloading file https://github.com/JuliaLang/Rmath-julia/archive/v0.2.0.tar.gz
INFO: Done downloading file https://github.com/JuliaLang/Rmath-julia/archive/v0.2.0.tar.gz
INFO: Attempting to Create directory /Users/mcawte/.julia/v0.6/Rmath/deps/src
INFO: Directory /Users/mcawte/.julia/v0.6/Rmath/deps/src already created
INFO: Attempting to Create directory /Users/mcawte/.julia/v0.6/Rmath/deps
INFO: Directory /Users/mcawte/.julia/v0.6/Rmath/deps already created
INFO: Path /Users/mcawte/.julia/v0.6/Rmath/deps/src/Rmath-julia-0.2.0 already created
INFO: Attempting to Create directory /Users/mcawte/.julia/v0.6/Rmath/deps/usr/lib
INFO: Directory /Users/mcawte/.julia/v0.6/Rmath/deps/usr/lib already created
INFO: Changing Directory to /Users/mcawte/.julia/v0.6/Rmath/deps/src/Rmath-julia-0.2.0
make[1]: *** [bd0.o] Segmentation fault: 11
make: *** [all] Error 2
===============================================================[ ERROR: Rmath ]================================================================

LoadError: failed process: Process(`make`, ProcessExited(2)) [2]
while loading /Users/mcawte/.julia/v0.6/Rmath/deps/build.jl, in expression starting on line 42

===============================================================================================================================================

===============================================================[ BUILD ERRORS ]================================================================

WARNING: Rmath had build errors.

 - packages with build errors remain installed in /Users/mcawte/.julia/v0.6
 - build the package(s) and all dependencies with `Pkg.build("Rmath")`
 - build a single package by running its `deps/build.jl` script

===============================================================================================================================================

The result of Pkg.status is

julia> Pkg.status("Rmath")
 - Rmath                         0.3.0

Running the build script from the command line gives

shell> julia /Users/mcawte/.julia/v0.6/Rmath/deps/build.jl
INFO: Attempting to Create directory /Users/deps/downloads
ERROR: LoadError: SystemError (with /Users/deps): mkdir: Permission denied
Stacktrace:
 [1] #systemerror#44 at ./error.jl:64 [inlined]
 [2] (::Base.#kw##systemerror)(::Array{Any,1}, ::Base.#systemerror, ::Symbol, ::Bool) at ./<missing>:0
 [3] mkdir(::String, ::UInt16) at ./file.jl:99
 [4] mkpath(::String, ::UInt16) at ./file.jl:114
 [5] mkpath(::String, ::UInt16) at ./file.jl:112
 [6] run(::BinDeps.##13#14{BinDeps.CreateDirectory}) at /Users/mcawte/.julia/v0.6/BinDeps/src/BinDeps.jl:476
 [7] run(::BinDeps.DirectoryRule) at /Users/mcawte/.julia/v0.6/BinDeps/src/BinDeps.jl:490
 [8] run(::BinDeps.SynchronousStepCollection) at /Users/mcawte/.julia/v0.6/BinDeps/src/BinDeps.jl:519 (repeats 2 times)
 [9] satisfy!(::BinDeps.LibraryDependency, ::Array{DataType,1}) at /Users/mcawte/.julia/v0.6/BinDeps/src/dependencies.jl:917
 [10] satisfy!(::BinDeps.LibraryDependency) at /Users/mcawte/.julia/v0.6/BinDeps/src/dependencies.jl:895
 [11] macro expansion at /Users/mcawte/.julia/v0.6/BinDeps/src/dependencies.jl:950 [inlined]
 [12] anonymous at ./<missing>:?
 [13] include_from_node1(::String) at ./loading.jl:569
 [14] include(::String) at ./sysimg.jl:14
 [15] process_options(::Base.JLOptions) at ./client.jl:305
 [16] _start() at ./client.jl:371
while loading /Users/mcawte/.julia/v0.6/Rmath/deps/build.jl, in expression starting on line 42

And then running it with administrator privileges gives

shell> sudo julia /Users/mcawte/.julia/v0.6/Rmath/deps/build.jl
Password:
ERROR: LoadError: ArgumentError: Module BinDeps not found in current path.
Run `Pkg.add("BinDeps")` to install the BinDeps package.
Stacktrace:
 [1] _require(::Symbol) at ./loading.jl:428
 [2] require(::Symbol) at ./loading.jl:398
 [3] include_from_node1(::String) at ./loading.jl:569
 [4] include(::String) at ./sysimg.jl:14
 [5] process_options(::Base.JLOptions) at ./client.jl:305
 [6] _start() at ./client.jl:371
while loading /Users/mcawte/.julia/v0.6/Rmath/deps/build.jl, in expression starting on line 1

But BinDeps is already installed

julia> Pkg.status("BinDeps")
 - BinDeps                       0.7.0

But I think that makes sense, because why would it be able to find BinDeps from the shell. I also tried to git clone and then make myself, but that also produced: make[1]: *** [bd0.o] Segmentation fault: 11.

I am running macos Sierra with xcode Version 8.3.3.

Fix warnings in Julia v0.7

How to fix these? I tried to just add @ in front of cfunction, but it causes another error:

┌ Warning: The function `cfunction` is now written as a macro `@cfunction`.
│   caller = __init__() at Rmath.jl:47
└ @ Rmath Rmath.jl:47
┌ Warning: The function `cfunction` is now written as a macro `@cfunction`.
│   caller = __init__() at Rmath.jl:49
└ @ Rmath Rmath.jl:49
┌ Warning: The function `cfunction` is now written as a macro `@cfunction`.
│   caller = __init__() at Rmath.jl:51
└ @ Rmath Rmath.jl:51

Can not build on Ubuntu 16.04 64x

INFO: Changing Directory to /home/bo/.julia/v0.6/Rmath/deps/src/Rmath-julia-0.2.0

[ ERROR: Rmath ]

LoadError: could not spawn make: no such file or directory (ENOENT)
while loading /home/bo/.julia/v0.6/Rmath/deps/build.jl, in expression starting on line 42

[ BUILD ERRORS ]

WARNING: Rmath had build errors.

  • packages with build errors remain installed in /home/bo/.julia/v0.6
  • build the package(s) and all dependencies with Pkg.build("Rmath")
  • build a single package by running its deps/build.jl script

Rmath jll for Apple Silicon needed

Currently there's no prebuilt version for of the jll for Apple Silicon :aarch64.
Patching Rmath.jl to use the system's arm64 Rmath.dylib (renamed) installed via brew install r seems to work just fine.

Missing make, gcc dependencies

I'm building a script for installing my software in a production environment on a VM. I found that if I copy my REQUIRE file over there, everything works fine, except for RMath.jl, which is missing make and gcc. I could install them as part of my script

apt-get -y install make
apt-get -y install gcc

but it would be cleaner if it was handled as part of RMath's dependencies.

Build error on Windows

I get this very odd build error here. There seems to be some problem with the SHA checking. The strange thing is that this only happens for one build in the whole build matrix...

using the wrong libRmath instead of libRmath-julia

I already have a "/usr/local/lib/libRmath.dylib". Pkg.build("Rmath") does not install Rmath-julia at all.

julia> Pkg.build("Rmath")
INFO: Building Rmath
julia> using Rmath
julia> import Rmath: libRmath
julia> libRmath
"/usr/local/lib/libRmath.dylib"

This file points to the libRmath in R
libRmath.dylib -> ../Cellar/r/3.3.1_2/lib/libRmath.dylib

Since it is linking to the wrong Rmath, srand(100) cannot fix the random number

julia> srand(100); Rmath.rpois(2,55)
2-element Array{Float64,1}:
 45.0
 47.0

julia> srand(100); Rmath.rpois(2,55)
2-element Array{Float64,1}:
 52.0
 67.0

If I remove this file, the following lib will be linked
"/Users/lanfengpan/julia/lib/julia/libRmath-julia.dylib"
This time srand works but not sure this is the right one because the deps.jl tries to install it into .julia/deps/usr/lib instead.

So probably we should rename the library libRmath to be something else in deps.jl to avoid using existing library? Many people already have some kind of Rmath installed.

Both Distributions and StatsFuns are effected.

build uses deprecated API of BinaryProvider

$ julia --depwarn=error
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.3.0-rc4.1 (2019-10-15)
 _/ |\__'_|_|_|\__'_|  |  
|__/                   |

(v1) pkg> st -m Rmath
    Status `~/.julia/environments/v1/Manifest.toml`
  [b99e7846] BinaryProvider v0.5.8
  [79098fc4] Rmath v0.5.1
  [8f399da3] Libdl 
  [9a3f8284] Random 
  [10745b16] Statistics 

(v1) pkg> build Rmath
  Building Rmath → `~/.julia/packages/Rmath/4wt82/deps/build.log`
┌ Error: Error building `Rmath`: 
│ ERROR: LoadError: platform_key() is deprecated, use platform_key_abi() from now on
│ Stacktrace:
│  [1] depwarn(::String, ::Symbol) at ./deprecated.jl:77
│  [2] platform_key(::String) at /home/tamas/.julia/packages/BinaryProvider/kcGxO/src/CompatShims.jl:10 (repeats 2 times)
│  [3] top-level scope at /home/tamas/.julia/packages/Rmath/4wt82/deps/build.jl:32
│  [4] include at ./boot.jl:328 [inlined]
│  [5] include_relative(::Module, ::String) at ./loading.jl:1105
│  [6] include(::Module, ::String) at ./Base.jl:31
│  [7] include(::String) at ./client.jl:432
│  [8] top-level scope at none:5
│ in expression starting at /home/tamas/.julia/packages/Rmath/4wt82/deps/build.jl:32
└ @ Pkg.Operations ~/src/julia-git/usr/share/julia/stdlib/v1.3/Pkg/src/backwards_compatible_isolation.jl:649

Cannot install Rmath.jl on a fresh Docker environment.

I couldn't install Rmath.jl on a fresh Docker environment. I used the official Julia image of Docker and did nothing special.

Here are the steps for reproduction:

  1. Install Docker (https://www.docker.com/).

  2. Save this Dockerfile in a clean directory:

FROM julia:0.6
RUN julia -e 'Pkg.update(); Pkg.add("Rmath")'
  1. Then run docker build -t rmath . to build an image there:
~/m/docker-biojulia $ docker build -t rmath .
Sending build context to Docker daemon  4.096kB
Step 1/2 : FROM julia:0.6
 ---> 5b5b1c7b9063
Step 2/2 : RUN julia -e 'Pkg.update(); Pkg.add("Rmath")'
 ---> Running in 8cb177307e44
INFO: Initializing package repository /root/.julia/v0.6
INFO: Cloning METADATA from https://github.com/JuliaLang/METADATA.jl
INFO: Updating METADATA...
INFO: Computing changes...
INFO: No packages to install, update or remove
INFO: Cloning cache of BinDeps from https://github.com/JuliaLang/BinDeps.jl.git
INFO: Cloning cache of Compat from https://github.com/JuliaLang/Compat.jl.git
INFO: Cloning cache of Rmath from https://github.com/JuliaStats/Rmath.jl.git
INFO: Cloning cache of SHA from https://github.com/staticfloat/SHA.jl.git
INFO: Cloning cache of URIParser from https://github.com/JuliaWeb/URIParser.jl.git
INFO: Installing BinDeps v0.6.0
INFO: Installing Compat v0.26.0
INFO: Installing Rmath v0.1.7
INFO: Installing SHA v0.3.3
INFO: Installing URIParser v0.1.8
INFO: Building Rmath
INFO: Attempting to Create directory /root/.julia/v0.6/Rmath/deps/downloads
INFO: Downloading file https://github.com/JuliaLang/Rmath-julia/archive/v0.1.tar.gz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   127    0   127    0     0    141      0 --:--:-- --:--:-- --:--:--   141
100  165k  100  165k    0     0  51659      0  0:00:03  0:00:03 --:--:--  110k
INFO: Done downloading file https://github.com/JuliaLang/Rmath-julia/archive/v0.1.tar.gz
INFO: Attempting to Create directory /root/.julia/v0.6/Rmath/deps/src
INFO: Attempting to Create directory /root/.julia/v0.6/Rmath/deps
INFO: Directory /root/.julia/v0.6/Rmath/deps already created
INFO: Attempting to Create directory /root/.julia/v0.6/Rmath/deps/usr/lib
INFO: Changing Directory to /root/.julia/v0.6/Rmath/deps/src/Rmath-julia-0.1
================================[ ERROR: Rmath ]================================

LoadError: could not spawn `make USE_DSFMT=1 DSFMT_includedir=/root/.julia/v0.6/Rmath/deps/dSFMT DSFMT_libdir=/usr/local/julia/bin/../lib/julia`: no such file or directory (ENOENT)
while loading /root/.julia/v0.6/Rmath/deps/build.jl, in expression starting on line 43

================================================================================

================================[ BUILD ERRORS ]================================

WARNING: Rmath had build errors.

 - packages with build errors remain installed in /root/.julia/v0.6
 - build the package(s) and all dependencies with `Pkg.build("Rmath")`
 - build a single package by running its `deps/build.jl` script

================================================================================
INFO: Package database updated
 ---> 6bbffdb12a33
Removing intermediate container 8cb177307e44
Successfully built 6bbffdb12a33
Successfully tagged rmath:latest

Random Number Generation Performance Issues

There are some issues with how the random number generating procedures are wrapped. To explain, look at how rpois is wrapped:

    ## Distributions with 1 parameter and no default
    macro libRmath_1par_0d(base)
        dd = Symbol("d", base)
        pp = Symbol("p", base)
        qq = Symbol("q", base)
        rr = Symbol("r", base)
        quote
            global $dd, $pp, $qq, $rr
            $dd(x::Number, p1::Number, give_log::Bool) = 
                ccall(($(string(dd)),libRmath), Float64,
                      (Float64,Float64,Int32), x, p1, give_log)
            $pp(q::Number, p1::Number, lower_tail::Bool, log_p::Bool) =
                ccall(($(string(pp)),libRmath), Float64,
                      (Float64,Float64,Int32,Int32), q, p1, lower_tail, log_p)
            $qq(p::Number, p1::Number, lower_tail::Bool, log_p::Bool) =
                ccall(($(string(qq)),libRmath), Float64,
                      (Float64,Float64,Int32,Int32), p, p1, lower_tail, log_p)
            $rr(nn::Integer, p1::Number) =
                [ccall(($(string(rr)),libRmath), Float64, (Float64,), p1) for i=1:nn]
            @libRmath_1par_0d_aliases $base
        end
    end
@libRmath_1par_0d pois

For reference, using rpois is like this: https://stat.ethz.ch/R-manual/R-devel/library/stats/html/Poisson.html

Two things to point out. One is that using a comprehensions gets rid of a lot of potential speedups. For example, it can re-use values if it makes more than 1 random number at a time, and so it should actually pass nn in and do something more as mentioned here. Also, Poisson random numbers should return ints, not Floats. Lastly, you should be able to pass it a p1 which is a vector. Also, to work like other random number algorithms in Julia, it should return a number and not a vector when nn is 1.

I suspect the other random number generating algorithms have similar problems.

Julia 1.5 libc.musl, could not load libRmath-julia.so

Looks like Rmath library is missing (or not being linked properly) with the new Julia-1.5.0-beta-1 libc.musl binary. I tried a few things to help find where this is happening but got stuck not knowing the internals here so well yet.

cc @ViralBShah

Julia 1.5 beta 1, libc.musl

/tmp/testrm 
$ julia150b1m -O3
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.5.0-beta1.0 (2020-05-28)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

(@v1.5) pkg> activate .
 Activating new environment at `/tmp/testrm/Project.toml`

(testrm) pkg> add Rmath
   Updating registry at `~/.julia/registries/General`
   Updating git-repo `https://github.com/JuliaRegistries/General.git`
  Resolving package versions...
Updating `/tmp/testrm/Project.toml`
  [79098fc4] + Rmath v0.6.1
Updating `/tmp/testrm/Manifest.toml`
  [79098fc4] + Rmath v0.6.1
  [f50d1b31] + Rmath_jll v0.2.2+0
  [2a0f44e3] + Base64
  [ade2ca70] + Dates
  [b77e0a4c] + InteractiveUtils
  [76f85450] + LibGit2
  [8f399da3] + Libdl
  [56ddb016] + Logging
  [d6f4376e] + Markdown
  [44cfe95a] + Pkg
  [de0858da] + Printf
  [3fa0cd96] + REPL
  [9a3f8284] + Random
  [ea8e919c] + SHA
  [9e88b42a] + Serialization
  [6462fe0b] + Sockets
  [cf7118a7] + UUIDs
  [4ec0a83e] + Unicode

(testrm) pkg> test Rmath
    Testing Rmath
Status `/tmp/jl_nnkMEf/Project.toml`
  [79098fc4] Rmath v0.6.1
  [f50d1b31] Rmath_jll v0.2.2+0
  [9a3f8284] Random
  [10745b16] Statistics
  [8dfed614] Test
Status `/tmp/jl_nnkMEf/Manifest.toml`
  [79098fc4] Rmath v0.6.1
  [f50d1b31] Rmath_jll v0.2.2+0
  [2a0f44e3] Base64
  [ade2ca70] Dates
  [8ba89e20] Distributed
  [b77e0a4c] InteractiveUtils
  [76f85450] LibGit2
  [8f399da3] Libdl
  [37e2e46d] LinearAlgebra
  [56ddb016] Logging
  [d6f4376e] Markdown
  [44cfe95a] Pkg
  [de0858da] Printf
  [3fa0cd96] REPL
  [9a3f8284] Random
  [ea8e919c] SHA
  [9e88b42a] Serialization
  [6462fe0b] Sockets
  [2f01184e] SparseArrays
  [10745b16] Statistics
  [8dfed614] Test
  [cf7118a7] UUIDs
  [4ec0a83e] Unicode
ERROR: LoadError: InitError: could not load library "libRmath-julia.so"
Error loading shared library libRmath-julia.so: No such file or directory
Stacktrace:
 [1] __init__() at /home/dehann/.julia/packages/Rmath/lo1Ao/src/Rmath.jl:37
 [2] _include_from_serialized at ./loading.jl:697
 [3] _require_search_from_serialized at ./loading.jl:782
 [4] _require at ./loading.jl:1007
 [5] require at ./loading.jl:928
 [6] require at ./loading.jl:923
 [7] include at ./client.jl:457
 [8] top-level scope at none:6
during initialization of module Rmath
in expression starting at /home/dehann/.julia/packages/Rmath/lo1Ao/test/runtests.jl:1
ERROR: Package Rmath errored during testing

Same thing happens after I try pkg> build Rmath.

So, I checked for the libRmath library location:

julia-1.5.0-beta1/bin 
$ readelf -d julia 

Dynamic section at offset 0x2df0 contains 22 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libjulia.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libc.musl-x86_64.so.1]
 0x000000000000000f (RPATH)              Library rpath: [$ORIGIN/../lib:$ORIGIN/../lib/julia]
 0x000000000000000c (INIT)               0x401138
 0x000000000000000d (FINI)               0x401bb2
 0x0000000000000019 (INIT_ARRAY)         0x602dc8
 0x000000000000001b (INIT_ARRAYSZ)       8 (bytes)
 0x0000000000000004 (HASH)               0x400258
 0x0000000000000005 (STRTAB)             0x4008e0
 0x0000000000000006 (SYMTAB)             0x4003d0
 0x000000000000000a (STRSZ)              911 (bytes)
 0x000000000000000b (SYMENT)             24 (bytes)
 0x0000000000000015 (DEBUG)              0x0
 0x0000000000000003 (PLTGOT)             0x603000
 0x0000000000000002 (PLTRELSZ)           936 (bytes)
 0x0000000000000014 (PLTREL)             RELA
 0x0000000000000017 (JMPREL)             0x400d90
 0x0000000000000007 (RELA)               0x400c70
 0x0000000000000008 (RELASZ)             288 (bytes)
 0x0000000000000009 (RELAENT)            24 (bytes)
 0x000000006ffffffb (FLAGS_1)            Flags: ORIGIN
 0x0000000000000000 (NULL)               0x0

But cannot find anything resembling librmath in either Julia's provided lib/ or lib/julia/ folder. So I'm a little lost on where that library is actually being included.

Also:

   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.5.0-beta1.0 (2020-05-28)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

julia> versioninfo()
Julia Version 1.5.0-beta1.0
Commit 6443f6c95a (2020-05-28 17:42 UTC)
Platform Info:
  OS: Linux (x86_64-linux-musl)
  CPU: Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-9.0.1 (ORCJIT, skylake)
Environment:
  JULIA_NUM_THREADS = 6

But still works with glibc version

glibc/julia-1.5.0-beta1/bin 
$ ./julia -O3
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.5.0-beta1.0 (2020-05-28)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

(@v1.5) pkg> add Rmath
   Updating registry at `~/.julia/registries/General`
   Updating git-repo `https://github.com/JuliaRegistries/General.git`
  Resolving package versions...
No Changes to `~/.julia/environments/v1.5/Project.toml`
No Changes to `~/.julia/environments/v1.5/Manifest.toml`

(@v1.5) pkg> test Rmath
    Testing Rmath
Status `/tmp/jl_HDc6j3/Project.toml`
  [79098fc4] Rmath v0.6.1
  [f50d1b31] Rmath_jll v0.2.2+0
  [9a3f8284] Random
  [10745b16] Statistics
  [8dfed614] Test
Status `/tmp/jl_HDc6j3/Manifest.toml`
  [79098fc4] Rmath v0.6.1
  [f50d1b31] Rmath_jll v0.2.2+0
  [2a0f44e3] Base64
  [ade2ca70] Dates
  [8ba89e20] Distributed
  [b77e0a4c] InteractiveUtils
  [76f85450] LibGit2
  [8f399da3] Libdl
  [37e2e46d] LinearAlgebra
  [56ddb016] Logging
  [d6f4376e] Markdown
  [44cfe95a] Pkg
  [de0858da] Printf
  [3fa0cd96] REPL
  [9a3f8284] Random
  [ea8e919c] SHA
  [9e88b42a] Serialization
  [6462fe0b] Sockets
  [2f01184e] SparseArrays
  [10745b16] Statistics
  [8dfed614] Test
  [cf7118a7] UUIDs
  [4ec0a83e] Unicode
    Testing Rmath tests passed 

Similarly, still works fine on Julia 1.4.2

Previous related issues

Suspected Issue

This is either an issue at Rmath_jll or here at Rmath.jl, but seems bit strange that musl vs glibc versions have different behaviors?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.