I’m getting following error, when I tried to install the GMT package into global packages.
Failed to precompile GMT [5752ebe1-31b9-557e-87aa-f909b540aa54] to /Users/cbandara/.julia/compiled/v1.6/GMT/jl_rcWYt7.
ERROR: LoadError: SystemError: opening file “/Users/cbandara/.julia/packages/GMT/1kBBX/deps/deps.jl”: No such file or directory
My Julia version: 1.6
OS: Mac Ventura 13.6
Mac Chip: Apple M1 Pro
I’m not seeing how it would it mater for this but why don’t you use a more recent Julia version? The just released 1.10rc is so much faster in compiling and loading the pre-compiled cache files.
Try to see what version was the last one supporting Julia 1.6 (look at the commit history of the project.toml on GitHub) and install that version (by specifying it in the project.toml.of your environment).
That approach you suggested to edit the Julia version in the Project.toml right ? This would help us to work in local env if that works, but in the production we have dockerize the application under based image which has the julia 1.6, then how do we do that version update ?
Anyway, try the master version. I’ve lowered the compat requirement to 1.6 and fixed the issue #1223 but there is at least one place where the stack function is used and that one requires Julia1.9. Don’t know if that bothers the using if that function is not called.
But if you want to give it a try, you can make GMT.jl work with a local GMT (the C program) build by following this recipe.
# The file deps/deps.jl is created by compile from the deps/build.jl
# On Windows we use a system wide GMT if it is found from path or install it from a GMT installer. It is a MSVC binary.
# On Unix the default is to use the GMT_jll artifact. However this can be changed to use a system wide GMT installation.
# To swap to a system wide GMT installation, do (in REPL):
# 1- ENV["SYSTEMWIDE_GMT"] = 1;
# 2- import Pkg; Pkg.build("GMT")
# 3- restart Julia
#
# Note the above will work up until some other reason triggers a Julia recompile, where the JLL artifacts
# will be used again. To make the ENV["SYSTEMWIDE_GMT"] = 1 solution permanent, declare a "SYSTEMWIDE_GMT"
# environment variable permanently in your .bashrc (or whatever).
Julia 1.6 support for Apple M1 is not great. At that version I might recommend the the Intel binaries over the native ARM binaries. We only upgraded Apple M1 to Tier 1 support status with Julia 1.9. An Ubuntu Linux machine wo I ld probably have better support at Julia 1.6.
What is the Julia 1.6 API that is keeping you at that version?
Also, have you been using a fresh Julia environment for this install?
@mkitti , Yes I tried with a fresh Julia env too. It’s an internal API that we have built, there are lots of legacy stuff we have built around that Julia 1.6 version.