Julia 1.6.2 weird installation: launches 1.6.0 instead of 1.6.2 [SOLVED]

Hi there,

Forgive me if I am doing something very silly, but I have downloaded version 1.6.2 from:

https://julialang-s3.julialang.org/bin/linux/x64/1.6/julia-1.6.2-linux-x86_64.tar.gz

and installed it by simply decompressing it to my home directory, as I have done with previous versions (1.5.2 and 1.6.0). However, after creating a link in my bin directory contained in my PATH, called julia, to the executable in ~/julia-1.6.2/bin/, when I type julia, in any terminal, the version which shows up is 1.6.0, the previous one I was using. In fact, if I cd to ~/julia1.6.2/bin and then type ./julia, it still launches 1.6.0 (SIC). What is happening here?

If it is relevant, my box is a desktop using Linux Kubuntu 21.04 amd64 and my shell is fish shell.

Thanks

Maybe you have some other julia around? Use the command which to see what is being called:

> which julia

Hi Paulo,

As I have described above, I do have other versions installed, but the which julia command output is:

/home/orca/bin/julia

and this exact file, as per the output of the command ls -hl /home/orca/bin/julia, is linked to:

lrwxrwxrwx 1 orca orca 32 Jul 24 18:36 /home/orca/bin/julia → /home/orca/julia-1.6.2/bin/julia*.

In fact, both commands: julia and julia-1.6.0 launch julia 1.6.0 (sic)…

I wonder if the web link to download julia 1.6.2, despite the name, isn’t really a link to the older julia 1.6.0 version…

Hi there,

It was really a silly thing: I had defined, by means of the fish shell, a function file called julia.fish, which sat in my .config/fish/functions directory, with the following code:

# Defined in - @ line 1
function julia --wraps=/home/orca/julia-1.6.0/bin/julia --description 'alias julia=/home/orca/julia-1.6.0/bin/julia'
  /home/orca/julia-1.6.0/bin/julia  $argv;
end

Thus, despite my file ~/bin/julia having been (re)defined as a symlink to ~/julia-1.6.2/bin/julia, somehow the fish function was taking precedence over the target of the symlink; I do not understand why. I will have to dig it deeper. Anyway, after changing the mentioned julia.fish so that every appearance of 1.6.0 was replaced by 1.6.2, everything seems to be working now…

Thanks, everybody!

I don’t know about fish, but in bash doing type julia would have told you that julia is a function. You should always use it over which to find out what a command is.

@cjdoris I have checked it now, under fish, and it tells that it is a fish function as well. Thanks! I will try to remind this always and keep it under my belt…