felipenoris / BLPData.jl

Julia language wrapper for the Bloomberg™ API
Other
19 stars 4 forks source link

LoadError: Cannot locate artifact 'blpapi' #19

Open banachtech opened 2 years ago

banachtech commented 2 years ago

Seems like an Apple silicon specific issue? On M1 Max Studio:

Precompiling project... ✗ BLPData 1 dependency successfully precompiled in 1 seconds. 289 already precompiled. 1 dependency errored. To see a full report either runimport Pkg; Pkg.precompile()` or load the package

julia> using BLPData [ Info: Precompiling BLPData [eb622722-88ce-45f2-a8b9-c2f73a5cb263] ERROR: LoadError: Cannot locate artifact 'blpapi' for aarch64-apple-darwin-libgfortran5-cxx11-julia_version+1.8.2 in '/Users/xxxx/.julia/packages/BLPData/huief/Artifacts.toml' `

felipenoris commented 2 years ago

Yes, this is a M1 issue.

I don't know if the macos artifact is compatible with M1. Given that Bloomberg provides the compiled binary (see https://www.bloomberg.com/professional/support/api-library/), my guess is that it was not compiled for aarch64.

One thing you can try is to add this to your Artifacts.toml file and retry.

[[blpapi]]
arch = "aarch64"
git-tree-sha1 = "2efdd93e172b25ccb55877c2006e1dbe8790b5a4"
os = "macos"

    [[blpapi.download]]
    sha256 = "5a2bbd14da0e46f6aed8c02da5c4917baa1fffa958ebb0d2c02e22ddab4fa222"
    url = "https://github.com/felipenoris/BLPData.jl/releases/download/blpapi-3.12.3.1/blpapi_cpp_3.14.3.1-macos-x64.tar.gz"
banachtech commented 2 years ago

Thank you Felipe. I tried the Artifacts edit and now get: julia> using BLPData ERROR: InitError: could not load library "/Users/xxx/.julia/artifacts/2efdd93e172b25ccb55877c2006e1dbe8790b5a4/libblpapi3_64.so" dlopen(/Users/xxx/.julia/artifacts/2efdd93e172b25ccb55877c2006e1dbe8790b5a4/libblpapi3_64.so.dylib, 0x0001): tried: '/Users/xxx/.julia/artifacts/2efdd93e172b25ccb55877c2006e1dbe8790b5a4/libblpapi3_64.so.dylib' (no such file)

The .so file exists though.