Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SIGABRT when importing umap #476

Closed
bicycle1885 opened this issue Mar 28, 2018 · 3 comments
Closed

SIGABRT when importing umap #476

bicycle1885 opened this issue Mar 28, 2018 · 3 comments

Comments

@bicycle1885
Copy link

bicycle1885 commented Mar 28, 2018

I'm trying to use the umap package via PyCall.jl. However, @pyimport umap results in assertion failure:

julia> using PyCall: @pyimport

julia> @pyimport umap
Assertion failed: (PassInf && "Expected all immutable passes to be initialized"), function addImmutablePass, file /Users/buildbot/miniconda3/conda-bld/llvmdev_1511828203076/work/lib/IR/LegacyPassManager.cpp, line 749.

signal (6): Abort trap: 6
while loading no file, in expression starting on line 467
__pthread_kill at /usr/lib/system/libsystem_kernel.dylib (unknown line)
Allocations: 5064700 (Pool: 5063238; Big: 1462); GC: 9
fish: 'julia' terminated by signal SIGABRT (Abort)

This is 100% reproducible on my machine, and never happens when importing it from Python3, so I think the problem is due to PyCall.jl or Julia.

I'm using PyCall.jl 1.15.0.

julia> 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-6267U CPU @ 2.90GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Haswell)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.9.1 (ORCJIT, skylake)

julia> PyCall.pyversion
v"3.6.1"

julia> PyCall.libpython
"/Users/kenta/miniconda3/lib/libpython3.6m"

julia> PyCall.PYTHONHOME
"/users/kenta/miniconda3:/users/kenta/miniconda3"
~/.j/v/PyCall ((v1.15.0)|✔) $ pip list --format=columns | grep -E "numba|numpy|umap|scipy|scikit-learn"
numba                             0.37.0
numpy                             1.14.2
scikit-learn                      0.19.1
scipy                             1.0.0
umap-learn                        0.2.1
@stevengj
Copy link
Member

stevengj commented Apr 4, 2018

It might be a conflict between the LLVM used by umap and the LLVM linked by Julia itself? See also #220

@stevengj
Copy link
Member

See also JuliaLang/julia#12644 (comment) … a workaround is apparently to open the offending library with dlopen("...path...", Libdl.RTLD_DEEPBIND) for now.

@stevengj
Copy link
Member

Closing as this needs to be fixed in Julia itself.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants