Baysor icon indicating copy to clipboard operation
Baysor copied to clipboard

Installation Issue

Open BoomStarcuc opened this issue 1 year ago • 4 comments

Hi @VPetukhov

When installing the Baysor by Building CLI application from source, I got the error: The manifest file you are using was most likely generated by a different version of Julia and is not compatible with this Julia version. More details are shown as follows:

Stacktrace: [1] load_urls(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}) @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:545 [2] #download_source#57 @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:733 [inlined] [3] download_source @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:732 [inlined] [4] instantiate(ctx::Pkg.Types.Context; manifest::Nothing, update_registry::Bool, verbose::Bool, platform::Base.BinaryPlatforms.Platform, allow_build::Bool, allow_autoprecomp::Bool, kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:1408 [5] instantiate @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:1325 [inlined] [6] #instantiate#252 @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:1321 [inlined] [7] instantiate() @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:1321 [8] top-level scope @ none:1 make: *** [/home/anaconda3/envs/baysor/Baysor-0.5.2/bin/julia-1.6.4//../BaysorSysimage.so] Error 1

System information: Linux version 5.10.120-1.el7.x86_64 (rpmbuild@compile-rh7) (gcc (GCC) 9.3.1 20200408 (Red Hat 9.3.1-2), GNU ld version 2.32-16.el7) #1

I would really appreciate it if you could help or give some advice.

Best YW

BoomStarcuc avatar Jul 13 '22 19:07 BoomStarcuc

@BoomStarcuc , Julia updated their Manifest language in version 1.7, so when I recompiled it under the version, the support for lower versions was dropped. Sorry for that, but you either need to install Julia 1.7 or use an older version of Baysor: Pkg.add(PackageSpec(url="https://github.com/hms-dbmi/Baysor.git", rev="0.5.1"))

VPetukhov avatar Jul 14 '22 08:07 VPetukhov

Hi, @VPetukhov

Thank you for your information!!!

After installing Julia 1.6.0 and then running the command '''Pkg.add(PackageSpec(url="https://github.com/hms-dbmi/Baysor.git", rev="0.5.1"))''', I got the errors as follows:

julia > Pkg.add(PackageSpec(url="https://github.com/hms-dbmi/Baysor.git", rev="0.5.1")) Cloning git-repo https://github.com/hms-dbmi/Baysor.git Updating git-repo https://github.com/hms-dbmi/Baysor.git ERROR: Did not find rev 0.5.1 in repository

Stacktrace: [1] pkgerror(msg::String) @ Pkg.Types /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Types.jl:55 [2] (::Pkg.Types.var"#44#45"{Pkg.Types.Context, Pkg.Types.PackageSpec, String})(repo::LibGit2.GitRepo) @ Pkg.Types /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Types.jl:634 [3] with(f::Pkg.Types.var"#44#45"{Pkg.Types.Context, Pkg.Types.PackageSpec, String}, obj::LibGit2.GitRepo) @ LibGit2 /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/LibGit2/src/types.jl:1150 [4] handle_repo_add!(ctx::Pkg.Types.Context, pkg::Pkg.Types.PackageSpec) @ Pkg.Types /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Types.jl:619 [5] handle_repos_add!(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}) @ Pkg.Types /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Types.jl:686 [6] add(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}; preserve::Pkg.Types.PreserveLevel, platform::Base.BinaryPlatforms.Platform, kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:177 [7] add @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:148 [inlined] [8] add(pkgs::Vector{Pkg.Types.PackageSpec}; kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:73 [9] add @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:72 [inlined] [10] #add#20 @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:69 [inlined] [11] add(pkg::Pkg.Types.PackageSpec) @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:69 [12] top-level scope @ REPL[4]:1

I also try other commands,like ''Pkg.add(PackageSpec(url="https://github.com/kharchenkolab/Baysor.git", rev="0.5.1"))" and "Pkg.add([PackageSpec(name="UMAP", rev="0.5.1"), PackageSpec(url="https://github.com/kharchenkolab/Baysor.git")])", which did not work. Could you give some advice?

Thank you very much again.

Best YW

BoomStarcuc avatar Jul 14 '22 15:07 BoomStarcuc

Hi, @VPetukhov

The version of Baysor 0.5.2 with Julia 1.7.3 works for me. Thank you for your help!!!

Best YW

BoomStarcuc avatar Jul 14 '22 16:07 BoomStarcuc

Hi, @VPetukhov

I successfully run the command.

baysor run -i 50 --force-2d --num-cells-init 20 -s 14 -c /configs/iss.toml -o ./output_no_dapi ./data/pciSeq_3-3.csv

But when I want to visualize cell borders using -p, I got errors as follows:

[22:31:10] Info: Plot diagnostics ERROR: LoadError: UndefRefError: access to undefined reference Stacktrace: [1] getproperty @ ./Base.jl:42 [inlined] [2] show @ ~/.julia/packages/Makie/6TJFL/src/makielayout/blocks/axis.jl:1205 [inlined] [3] show_delim_array(io::IOContext{IOBuffer}, itr::Tuple{NamedTuple{(:font,), Tuple{String}}, typeof(Makie.initialize_block!), Makie.Axis}, op::Char, delim::Char, cl::Char, delim_one::Bool, i1::Int64, n::Int64) @ Base ./show.jl:1244 [4] show_delim_array @ ./show.jl:1229 [inlined] [5] show(io::IOContext{IOBuffer}, t::Tuple{NamedTuple{(:font,), Tuple{String}}, typeof(Makie.initialize_block!), Makie.Axis}) @ Base ./show.jl:1262 [6] _show_default(io::IOBuffer, x::Any) @ Base ./show.jl:413 [7] show_default @ ./show.jl:396 [inlined] [8] show @ ./show.jl:391 [inlined] [9] print(io::IOBuffer, x::MethodError) @ Base ./strings/io.jl:35 [10] print_to_string(::MethodError, ::Vararg{Any}) @ Base ./strings/io.jl:144 [11] string(::MethodError, ::String) @ Base ./strings/io.jl:185 [12] macro expansion @ ./logging.jl:360 [inlined] [13] run_cli(args::Vector{String}) @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/cli/common.jl:170 [14] run_cli() @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/cli/common.jl:137 [15] top-level scope @ ~/anaconda3/envs/baysor/Baysor-0.5.2/bin/baysor:3 in expression starting at /home/jcl3689/anaconda3/envs/baysor/Baysor-0.5.2/bin/baysor:3

caused by: MethodError: no method matching initialize_block!(::Makie.Axis; font="Helvetica") Closest candidates are: initialize_block!(::Makie.Axis; palette) at ~/.julia/packages/Makie/6TJFL/src/makielayout/blocks/axis.jl:168 got unsupported keyword argument "font" initialize_block!(::Makie.Colorbar) at ~/.julia/packages/Makie/6TJFL/src/makielayout/blocks/colorbar.jl:81 got unsupported keyword argument "font" initialize_block!(::Makie.Axis3) at ~/.julia/packages/Makie/6TJFL/src/makielayout/blocks/axis3d.jl:3 got unsupported keyword argument "font" ... Stacktrace: [1] kwerr(::NamedTuple{(:font,), Tuple{String}}, ::Function, ::Makie.Axis) @ Base ./error.jl:163 [2] block(::Type{Makie.Axis}, ::Makie.Figure; bbox::Nothing, kwargs::Base.Pairs{Symbol, Any, NTuple{10, Symbol}, NamedTuple{(:title, :xticksvisible, :yticksvisible, :xticklabelsize, :yticklabelsize, :xlabel, :ylabel, :xlabelpadding, :ylabelpadding, :font), Tuple{String, Bool, Bool, Int64, Int64, String, String, Int64, Int64, String}}}) @ Makie ~/.julia/packages/Makie/6TJFL/src/makielayout/blocks.jl:403 [3] ##993 @ ~/.julia/packages/Makie/6TJFL/src/makielayout/blocks.jl:279 [inlined] [4] plot_num_of_cells_per_iterarion(tracer::Dict{Symbol, Any}) @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/data_processing/plots.jl:155 [5] (::Baysor.var"#329#330"{NamedTuple{(:exprs, :assignment, :diffs, :assignment_probs, :change_fracs), Tuple{Matrix{Float64}, Vector{Int64}, Vector{Float64}, Matrix{Float64}, Vector{Float64}}}, Nothing, DataFrames.DataFrame, Vector{Int64}, Dict{Symbol, Any}})(io::IOStream) @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/cli/main.jl:162 [6] open(::Baysor.var"#329#330"{NamedTuple{(:exprs, :assignment, :diffs, :assignment_probs, :change_fracs), Tuple{Matrix{Float64}, Vector{Int64}, Vector{Float64}, Matrix{Float64}, Vector{Float64}}}, Nothing, DataFrames.DataFrame, Vector{Int64}, Dict{Symbol, Any}}, ::String, ::Vararg{String}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Base ./io.jl:330 [7] open @ ./io.jl:328 [inlined] [8] plot_diagnostics_panel(df_res::DataFrames.DataFrame, assignment::Vector{Int64}, tracer::Dict{Symbol, Any}, args::Dict{String, Any}; clust_res::NamedTuple{(:exprs, :assignment, :diffs, :assignment_probs, :change_fracs), Tuple{Matrix{Float64}, Vector{Int64}, Vector{Float64}, Matrix{Float64}, Vector{Float64}}}, comp_segs::Nothing) @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/cli/main.jl:142 [9] save_segmentation_results(bm_data::Baysor.BmmData{3}, gene_names::Vector{String}, args::Dict{String, Any}; mol_clusts::NamedTuple{(:exprs, :assignment, :diffs, :assignment_probs, :change_fracs), Tuple{Matrix{Float64}, Vector{Int64}, Vector{Float64}, Matrix{Float64}, Vector{Float64}}}, comp_segs::Nothing, prior_polygons::Vector{Matrix{Float64}}) @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/cli/main.jl:412 [10] run_cli_main(args::Vector{String}) @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/cli/main.jl:481 [11] run_cli(args::Vector{String}) @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/cli/common.jl:152 [12] run_cli() @ Baysor ~/.julia/packages/Baysor/K7Vqu/src/cli/common.jl:137 [13] top-level scope @ ~/anaconda3/envs/baysor/Baysor-0.5.2/bin/baysor:3

I also looked for some solutions for this error, but it did not work. Should I install old version of Baysor 0.5.1 to try it? If so, could you tell me the correct julia command for old version of baysor 0.5.1

@BoomStarcuc , Julia updated their Manifest language in version 1.7, so when I recompiled it under the version, the support for lower versions was dropped. Sorry for that, but you either need to install Julia 1.7 or use an older version of Baysor: Pkg.add(PackageSpec(url="https://github.com/hms-dbmi/Baysor.git", rev="0.5.1"))

Sorry for your inconvenience. I am new for julia, so I really appreciate if you could give me some help or advice?

Best YW

BoomStarcuc avatar Jul 15 '22 00:07 BoomStarcuc

Hi, @VPetukhov

The version of Baysor 0.5.2 with Julia 1.7.3 works for me. Thank you for your help!!!

Best YW

Hello! What system are you using? MacOS or Linux system? And which version is the system?

IMJoeyZhu avatar Mar 01 '23 08:03 IMJoeyZhu

Please, see the response in https://github.com/kharchenkolab/Baysor/issues/59 . Should be resolved in v0.6.0.

VPetukhov avatar Apr 21 '23 08:04 VPetukhov