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

[casacore] Update to 3.6.1 #9964

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

kiranshila
Copy link
Contributor

Also swap out OpenBLAS for libblastrampoline

Dependency(PackageSpec(name="WCS_jll", uuid="550c8279-ae0e-5d1b-948f-937f2608a23e"); compat="7.7.0");
Dependency(PackageSpec(name="Readline_jll", uuid="05236dd9-4125-5232-aa7c-9ec0c9b2c25a"); compat="8.1.1");
Dependency(PackageSpec(name="GSL_jll", uuid="1b77fbbe-d8ee-58f0-85f9-836ddc23a7a4"); compat="2.7.2");
Dependency(PackageSpec(name="libblastrampoline_jll", uuid="8e850b90-86db-534c-a0d3-1478176c7d93"); compat="5.11.2");
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LBT v5.4 should be enough

Suggested change
Dependency(PackageSpec(name="libblastrampoline_jll", uuid="8e850b90-86db-534c-a0d3-1478176c7d93"); compat="5.11.2");
Dependency(PackageSpec(name="libblastrampoline_jll", uuid="8e850b90-86db-534c-a0d3-1478176c7d93"); compat="5.4");

Note that if you're using the LP64 API you need to make sure that your consumer package (whatever is using this package) provides a backing LP64 BLAS library: by default Julia only provides an ILP64 one.

Copy link
Contributor Author

@kiranshila kiranshila Dec 9, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What are the implications of this? As in, the likes of Casacore.jl would need to add a dep on OpenBLAS?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

More OpenBLAS32

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So would it be better to just leave this as a dep on OpenBLAS32?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe yes (but make sure the library itself links to lbt, rather than openblas).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not quite sure I follow. Are you saying to have both a dep on OpenBLAS32 and LBT but tell cmake to use lbt as the blas/lapack provider?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you saying to have both a dep on OpenBLAS32 and LBT

Yes.

but tell cmake to use lbt as the blas/lapack provider?

Yes, which is what you're already doing, but double check that cmake actually does it.

@kiranshila
Copy link
Contributor Author

Actually, something might be wonky in this package anayway as I'm getting

julia> using casacore_jll
ERROR: InitError: could not load library "/home/kshila/.julia/artifacts/284db20f5e28d2acbc70c9a4b530c3d700a4a9aa/lib/libcasa_coordinates.so"
libgsl.so.27: cannot open shared object file: No such file or directory
Stacktrace:
  [1] dlopen(s::String, flags::UInt32; throw_error::Bool)
    @ Base.Libc.Libdl ./libdl.jl:120
  [2] dlopen(s::String, flags::UInt32)
    @ Base.Libc.Libdl ./libdl.jl:119
  [3] macro expansion
    @ ~/.julia/packages/JLLWrappers/jXOYx/src/products/library_generators.jl:63 [inlined]
  [4] __init__()
    @ casacore_jll ~/.julia/packages/casacore_jll/LHjd5/src/wrappers/x86_64-linux-gnu-libgfortran5-cxx11.jl:52
  [5] run_module_init(mod::Module, i::Int64)
    @ Base ./loading.jl:1378
  [6] register_restored_modules(sv::Core.SimpleVector, pkg::Base.PkgId, path::String)
    @ Base ./loading.jl:1366
  [7] _include_from_serialized(pkg::Base.PkgId, path::String, ocachepath::String, depmods::Vector{Any}, ignore_native::Nothing; register::Bool)
    @ Base ./loading.jl:1254
  [8] _include_from_serialized (repeats 2 times)
    @ ./loading.jl:1210 [inlined]
  [9] _require_search_from_serialized(pkg::Base.PkgId, sourcepath::String, build_id::UInt128, stalecheck::Bool; reasons::Dict{…}, DEPOT_PATH::Vector{…})
    @ Base ./loading.jl:2057
 [10] _require(pkg::Base.PkgId, env::String)
    @ Base ./loading.jl:2527
 [11] __require_prelocked(uuidkey::Base.PkgId, env::String)
    @ Base ./loading.jl:2388
 [12] #invoke_in_world#3
    @ ./essentials.jl:1089 [inlined]
 [13] invoke_in_world
    @ ./essentials.jl:1086 [inlined]
 [14] _require_prelocked(uuidkey::Base.PkgId, env::String)
    @ Base ./loading.jl:2375
 [15] macro expansion
    @ ./loading.jl:2314 [inlined]
 [16] macro expansion
    @ ./lock.jl:273 [inlined]
 [17] __require(into::Module, mod::Symbol)
    @ Base ./loading.jl:2271
 [18] #invoke_in_world#3
    @ ./essentials.jl:1089 [inlined]
 [19] invoke_in_world
    @ ./essentials.jl:1086 [inlined]
 [20] require(into::Module, mod::Symbol)
    @ Base ./loading.jl:2260
during initialization of module casacore_jll
Some type information was truncated. Use `show(err)` to see complete types.

Even though GSL is a specified dep?

@giordano
Copy link
Member

giordano commented Dec 9, 2024

GSL breaks the ABI in every minor release: #3024 (at least when they do remember to change the soversion).

@kiranshila
Copy link
Contributor Author

Oh good grief

Also swap out OpenBLAS for libblastrampoline
@kiranshila
Copy link
Contributor Author

kiranshila commented Dec 9, 2024

Alright now I'm getting

libgfortran.so.3: cannot open shared object file: No such file or directory

@kiranshila
Copy link
Contributor Author

Ah I might have just built this for the wrong triple locally

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

Successfully merging this pull request may close these issues.

2 participants