Cannot install Julia 1.0

Cannot install julia v1.0 due to the following error.

ERROR: could not load library "/usr/local/bin/../lib/julia/sys.dylib"
dlopen(/usr/local/bin/../lib/julia/sys.dylib, 6): image not found

I have run v0.6 but failed for v0.7 and also v1.0. I have asked it before here (Cannot boot julia v0.7 due to ERROR: could not load library) but I could not get any clue.

It’s difficult to say without more detailed info (e.g. OS). From your last post I see you have a mac and I suppose you have a borked earlier installation. I’d have a look at

ls -l /usr/local/bin/jul*  # any softlinks?
ls -l ~/.jul*
ls /Application            # any Julia entries? E.g. Julia-0.6.app

Then delete all existing Julia things, e.g. the whole ‘~/.julia’ folder, ‘~/.juliarc.jl’ etc. and re-install v1.0 from scratch. I compiled from source but I strongly suppose that the binary works well.

A note if you are not aware: Julia 1.0 means that the API is stable but not that all ‘end-user-amenities’ (e.g. debugger) have been implemented yet or that Juno (current ‘standard IDE’) is (fully) aware of Julia 1.0. The release is very fresh and it will take time (weeks) until packages have settled/updated. Lastly, some code (i.e. LinearAlgebra, Statistics) has been ‘outsourced’ to stdlib and needs to be loaded explicitly (e.g. using LinearAlgebra). It might be a good idea to put these statements into the ~/.julia/config/startup.jl file.

Hope it works (and you have fun with this great new release)!

Thanks for your advice! My environment is macOS 10.13.6, and I installed julia from binary files. They are at /Applications/Julia-1.0.app. I deleted all symlinks and julia related files but v1.0 doesn’t works for same error. v0.6.4 works.
I can’t understand why julia try to find /usr/local/bin/../lib/julia/sys.dylib. There’s nothing.

Just a guess, have you ever tried to install Julia using Homebrew? Maybe you have some debris from that install.

1 Like

I had tried to install julia from homebrew but I have no idea what might cause the problem.

Try brew uninstall julia, or if that doesn’t work, brew uninstall --force julia. Then try running the downloaded binary again.

I have installed it via homebrew-cask. I have uninstalled it and retried but not solved the problem.

The following is what works for me on OS X 10.11 (an older version). You install v1.0, the Mac binary package from the official download page, and then create a symbolic link in a directory on your $PATH. For example:

cd /usr/bin
sudo ln -s /Applications/Julia-1.0.app/Contents/Resources/julia/bin/julia

Brew-cask’s formula already links julia to /usr/local/bin, if I understand correctly. So I would not recommend the sudo ln to /usr/bin (not a good location for that symlink anyway)

The problem seems to be finding a dylib. Could you run the following in a terminal and report the output:

echo $DYLD_LIBRARY_PATH

Also, what do you see with

which julia

Like this (julia installed via brew-cask):

bash-3.2$ echo $DYLD_LIBRARY_PATH

bash-3.2$ which julia
/usr/local/bin/julia

Mmh, in this case it’s more a problem with homebrew (cask). Is there a reason you install Julia with homebrew and not from the official .dmg (https://julialang-s3.julialang.org/bin/mac/x64/1.0/julia-1.0.0-mac64.dmg)?

As an example: I have several Julia programs installed from .dmg and also master from source; then manually created softlinks under ‘/usr/local/bin/[julia05|julia06|julia07]’ to choose which version to use. Works fine, maybe a solution for you?

While I use homebrew (but not cask), I mostly use it for small utilities or low-level stuff, e.g. tree, gcc, tmux, etc. Homebrew and the recipes are not without faults. [Edit] This said, under https://julialang.org/downloads/platform.html the brew cask install julia command is given, thus it should work (but sorry, I don’t know cask and cannot help here).

In any case the title should be changed to mention homebrew/cask (if this is possible).

Ok, that all looks as it should.

Aha, I may be able to reproduce this, based on info from here: OSX - Julia 1.0 won't start - segmentation fault

If I set $JULIA_BINDIR to where my binary sits, I see your error message. Do you see anything set if you

echo $JULIA_BINDIR

If so, try unset JULIA_BINDIR; julia. If that works, then it’s just a matter of finding where in your shell startup scripts you’re setting JULIA_BINDIR, and deleting that.

2 Likes

That’s it. It works. Thank you!

2 Likes