Julia contains references to its build directory

OpenSubmitted by zimoun.
Details
2 participants
  • Ludovic Courtès
  • zimoun
Owner
unassigned
Severity
normal
Z
Z
zimoun wrote on 5 May 2021 15:22
Julia keeps build directory in the output
(name . Bug Guix)(address . bug-guix@gnu.org)(name . Nicolò Balzarotti)(address . anothersms@gmail.com)
864kfh48nh.fsf@gmail.com
Hi,

Packaging Julia stuff, I note something as a bug, I guess. Julia seems
to keep references to the build directory in the output.

Toggle snippet (15 lines)
$ find $(guix build julia --no-grafts) -type f \
-exec grep '/tmp/guix-build-julia-1.5.3.drv-0' {} \;
Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/lib/libjulia.so.1.5 matches
Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/lib/julia/sys.so matches
Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/lib/julia/libccalltest.so.debug matches
Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/lib/julia/libllvmcalltest.so matches
Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/bin/.julia-real matches
Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/share/julia/base.cache matches
Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/share/julia/test/depot/compiled/v1.5/Bar/HXSAn_w3IH9.ji matches
Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/share/julia/test/depot/compiled/v1.5/Foo/MYb1d_w3IH9.ji matches
Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/share/julia/test/depot/compiled/v1.5/Foo/TeeT6_w3IH9.ji matches
Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/share/julia/test/depot/compiled/v1.5/Qux/YFfiR_w3IH9.ji matches
Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/share/julia/test/depot/compiled/v1.5/Baz/rONVA_w3IH9.ji matches

The consequence is ’dlopen’ is broken and some Julia packages cannot be
pre-compiled. Here, an example using the Julia package manager:

Toggle snippet (32 lines)
$ rm -fr ~/.julia # for the sake of the illustration ;-)
$ cat /tmp/foo.jl
using Pkg
Pkg.add("GZip")
println("# => Now let pre-compile")
using GZip
exit()

$ guix environment --ad-hoc julia -- julia --load /tmp/foo.jl
Installing known registries into `~/.julia`
######################################################################### 100.0%
Added registry `General` to `~/.julia/registries/General`
Resolving package versions...
Installed GZip ─ v0.5.1
Updating `~/.julia/environments/v1.5/Project.toml`
[92fee26a] + GZip v0.5.1
Updating `~/.julia/environments/v1.5/Manifest.toml`
[92fee26a] + GZip v0.5.1
[8f399da3] + Libdl
# => Now let pre-compile
ERROR: LoadError: LoadError: could not load library "libz"
libz.so: cannot open shared object file: No such file or directory
Stacktrace:

[...]

in expression starting at /home/simon/.julia/packages/GZip/JNmGn/src/zlib_h.jl:13
in expression starting at /home/simon/.julia/packages/GZip/JNmGn/src/GZip.jl:73
ERROR: LoadError: Failed to precompile GZip [92fee26a-97fe-5a0c-ad85-20a5f3185b63] to /home/simon/.julia/compiled/v1.5/GZip/s2LKY_jQTtL.ji.

Let tweak the GZip ’ccall’ and pre-compile again to show that the
build-directory is contained in the output, and the Julia internal trace
raises it.

Toggle snippet (30 lines)
$ diff ~/.julia/packages/GZip/JNmGn/src/GZip.jl{,.orig}
75c75
< const GZLIB_VERSION = unsafe_string(ccall(:zlibVersion, Ptr{UInt8}, ()))
---
> const GZLIB_VERSION = unsafe_string(ccall((:zlibVersion, GZip._zlib), Ptr{UInt8}, ()))

$ diff ~/.julia/packages/GZip/JNmGn/src/zlib_h.jl{,.orig}
13c13
< zlib_version = unsafe_string(ccall(:zlibVersion, Ptr{UInt8}, ()))
---
> zlib_version = unsafe_string(ccall((:zlibVersion, _zlib), Ptr{UInt8}, ()))
84c84
< const zlib_compile_flags = ccall(:zlibCompileFlags, UInt, ())
---
> const zlib_compile_flags = ccall((:zlibCompileFlags, _zlib), UInt, ())

$ guix environment --ad-hoc julia -- julia -e 'using GZip'
ERROR: LoadError: could not load library "libz"
libz.so: cannot open shared object file: No such file or directory
Stacktrace:
[1] dlopen(::String, ::UInt32; throw_error::Bool) at /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/share/julia/stdlib/v1.5/Libdl/src/Libdl.jl:109
[2] dlopen at /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/share/julia/stdlib/v1.5/Libdl/src/Libdl.jl:109 [inlined] (repeats 2 times)

[...]

in expression starting at /home/simon/.julia/packages/GZip/JNmGn/src/GZip.jl:206


I have tried to tweak LD_LIBRARY_PATH in the julia definition and
rebuild it. Still the same error. Note building the julia package
takes ~2h on my machine, so the trial-error takes ages. ;-)

Another illustration:

Toggle snippet (82 lines)
$ cat /tmp/bar/pkg.scm
(define-module (pkg)
#:use-module (guix packages)
#:use-module (guix git-download)
#:use-module (guix build-system julia)
#:use-module ((guix licenses) #:prefix license:))

(define-public julia-gzip
(package
(name "julia-gzip")
(version "0.5.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaIO/GZip.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "06bx3l1nsvdswgl344347cjh6ffd2r1hw3lz4h0aicayc566717f"))))
(build-system julia-build-system)
(home-page "https://github.com/JuliaIO/GZip.jl")
(synopsis "TODO")
(description "TODO")
(license license:expat)))

$ guix build -L /tmp/bar/ julia-gzip
The following derivation will be built:
/gnu/store/2wiyhvqrhq8bbiw34gyxclv6zzf98vy3-julia-gzip-0.5.1.drv
building /gnu/store/2wiyhvqrhq8bbiw34gyxclv6zzf98vy3-julia-gzip-0.5.1.drv...
starting phase `set-SOURCE-DATE-EPOCH'
phase `set-SOURCE-DATE-EPOCH' succeeded after 0.0 seconds
starting phase `set-paths'
environment variable `PATH' set to `/gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/bin:/gnu/store/v6f44zccwh9z5zk3pjlywjybbi8n2hjh-tar-1.32/bin:/gnu/store/ncydgq2znms5n1d2k5yqshhf58nsixwv-gzip-1.10/bin:/gnu/store/i8h2pcxqdq07ijm3ibkka8f4smn1w48v-bzip2-1.0.8/bin:/gnu/store/9860f1abqj8wjjnwl8a9v54pdcc3bhgf-xz-5.2.4/bin:/gnu/store/60g7r3l01fd7c58yjbm6krgcwj1jkpwg-file-5.38/bin:/gnu/store/n4n560pfvvw50a9369axw5vj5rrqfj1n-diffutils-3.7/bin:/gnu/store/cd5qf3kcnlq35p9k392pjdpdzpsnds70-patch-2.7.6/bin:/gnu/store/hic7snhayfl7m6cpfqqr73nmm19bpqkg-findutils-4.7.0/bin:/gnu/store/swqdvwri9dbv6zssg6v0by7l05hd6wxp-gawk-5.0.1/bin:/gnu/store/ishk7fswcs4gkwcp8mh788z4mvvl9bxh-sed-4.8/bin:/gnu/store/bhs4rj58v8j1narb2454raan2ps38xd8-grep-3.4/bin:/gnu/store/57xj5gcy1jbl9ai2lnrqnpr0dald9i65-coreutils-8.32/bin:/gnu/store/hm40bxnv8jxmbc1lpb7zfimii4xm9m81-make-4.3/bin:/gnu/store/pwcp239kjf7lnj5i4lkdzcfcxwcfyk72-bash-minimal-5.0.16/bin:/gnu/store/mpa04aq8lblbcviyxywxcsb1zbi0mf39-ld-wrapper-0/bin:/gnu/store/m1z7cdbqsqyp9xnjw5cvlb4a7gkcg3m4-binutils-2.34/bin:/gnu/store/rn75fm7adgx3pw5j8pg3bczfqq1y17lk-gcc-7.5.0/bin:/gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/bin:/gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/sbin'
environment variable `JULIA_LOAD_PATH' unset
environment variable `JULIA_DEPOT_PATH' set to `/gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/share/julia/'
environment variable `BASH_LOADABLES_PATH' unset
environment variable `C_INCLUDE_PATH' set to `/gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/include:/gnu/store/i8h2pcxqdq07ijm3ibkka8f4smn1w48v-bzip2-1.0.8/include:/gnu/store/9860f1abqj8wjjnwl8a9v54pdcc3bhgf-xz-5.2.4/include:/gnu/store/60g7r3l01fd7c58yjbm6krgcwj1jkpwg-file-5.38/include:/gnu/store/swqdvwri9dbv6zssg6v0by7l05hd6wxp-gawk-5.0.1/include:/gnu/store/hm40bxnv8jxmbc1lpb7zfimii4xm9m81-make-4.3/include:/gnu/store/m1z7cdbqsqyp9xnjw5cvlb4a7gkcg3m4-binutils-2.34/include:/gnu/store/rn75fm7adgx3pw5j8pg3bczfqq1y17lk-gcc-7.5.0/include:/gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/include:/gnu/store/gfapkk5c6hvl1d94m4sqnhn7f9l5gqyh-linux-libre-headers-5.4.20/include'
environment variable `CPLUS_INCLUDE_PATH' set to `/gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/include:/gnu/store/i8h2pcxqdq07ijm3ibkka8f4smn1w48v-bzip2-1.0.8/include:/gnu/store/9860f1abqj8wjjnwl8a9v54pdcc3bhgf-xz-5.2.4/include:/gnu/store/60g7r3l01fd7c58yjbm6krgcwj1jkpwg-file-5.38/include:/gnu/store/swqdvwri9dbv6zssg6v0by7l05hd6wxp-gawk-5.0.1/include:/gnu/store/hm40bxnv8jxmbc1lpb7zfimii4xm9m81-make-4.3/include:/gnu/store/m1z7cdbqsqyp9xnjw5cvlb4a7gkcg3m4-binutils-2.34/include:/gnu/store/rn75fm7adgx3pw5j8pg3bczfqq1y17lk-gcc-7.5.0/include/c++:/gnu/store/rn75fm7adgx3pw5j8pg3bczfqq1y17lk-gcc-7.5.0/include:/gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/include:/gnu/store/gfapkk5c6hvl1d94m4sqnhn7f9l5gqyh-linux-libre-headers-5.4.20/include'
environment variable `LIBRARY_PATH' set to `/gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/lib:/gnu/store/i8h2pcxqdq07ijm3ibkka8f4smn1w48v-bzip2-1.0.8/lib:/gnu/store/9860f1abqj8wjjnwl8a9v54pdcc3bhgf-xz-5.2.4/lib:/gnu/store/60g7r3l01fd7c58yjbm6krgcwj1jkpwg-file-5.38/lib:/gnu/store/swqdvwri9dbv6zssg6v0by7l05hd6wxp-gawk-5.0.1/lib:/gnu/store/m1z7cdbqsqyp9xnjw5cvlb4a7gkcg3m4-binutils-2.34/lib:/gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/lib:/gnu/store/s3dcqzwqaakv1yx37by9chksdbkgih17-glibc-2.31-static/lib:/gnu/store/hwcky7446s952w0mwchhmm211ll07zrq-glibc-utf8-locales-2.31/lib'
environment variable `GUIX_LOCPATH' set to `/gnu/store/hwcky7446s952w0mwchhmm211ll07zrq-glibc-utf8-locales-2.31/lib/locale'
phase `set-paths' succeeded after 0.0 seconds
starting phase `install-locale'
using 'en_US.utf8' locale for category "LC_ALL"
phase `install-locale' succeeded after 0.0 seconds
starting phase `unpack'

[...]

phase `unpack' succeeded after 0.0 seconds
starting phase `patch-source-shebangs'
phase `patch-source-shebangs' succeeded after 0.0 seconds
starting phase `patch-generated-file-shebangs'
phase `patch-generated-file-shebangs' succeeded after 0.0 seconds
starting phase `install'

[...]

phase `install' succeeded after 0.0 seconds
starting phase `check'
ERROR: LoadError: LoadError: could not load library "libz"
libz.so: cannot open shared object file: No such file or directory
Stacktrace:

[...]

in expression starting at /gnu/store/dak0gnj5kqdma55xy279345qzsal9zdq-julia-gzip-0.5.1/share/julia/packages/GZip/src/zlib_h.jl:13
in expression starting at /gnu/store/dak0gnj5kqdma55xy279345qzsal9zdq-julia-gzip-0.5.1/share/julia/packages/GZip/src/GZip.jl:73
ERROR: LoadError: Failed to precompile GZip [92fee26a-97fe-5a0c-ad85-20a5f3185b63] to /tmp/.julia/compiled/v1.5/GZip/s2LKY_y94HW.ji.
Stacktrace:

[...]

in expression starting at /gnu/store/dak0gnj5kqdma55xy279345qzsal9zdq-julia-gzip-0.5.1/share/julia/packages/GZip/test/runtests.jl:1
command "julia" "--depwarn=yes" "/gnu/store/dak0gnj5kqdma55xy279345qzsal9zdq-julia-gzip-0.5.1/share/julia/packages/GZip/test/runtests.jl" failed with status 1
builder for `/gnu/store/2wiyhvqrhq8bbiw34gyxclv6zzf98vy3-julia-gzip-0.5.1.drv' failed with exit code 1
build of /gnu/store/2wiyhvqrhq8bbiw34gyxclv6zzf98vy3-julia-gzip-0.5.1.drv failed
View build log at '/var/log/guix/drvs/2w/iyhvqrhq8bbiw34gyxclv6zzf98vy3-julia-gzip-0.5.1.drv.bz2'.
guix build: error: build of `/gnu/store/2wiyhvqrhq8bbiw34gyxclv6zzf98vy3-julia-gzip-0.5.1.drv' failed


Cheers,
simon
L
L
Ludovic Courtès wrote on 5 May 2021 22:10
control message for bug #48238
(address . control@debbugs.gnu.org)
87tunhhrgn.fsf@gnu.org
retitle 48238 Julia contains references to its build directory
quit
Z
Z
zimoun wrote on 12 May 2021 10:57
Re: bug#48238: Julia contains references to its build directory
(address . 48238@debbugs.gnu.org)(name . Nicolò Balzarotti)(address . anothersms@gmail.com)
854kf88h2n.fsf@gmail.com
Hi,

In the update to v1.6.1, please give a look at some explanations:


On mer., 05 mai 2021 at 15:22, zimoun <zimon.toutoune@gmail.com> wrote:

Toggle quote (14 lines)
> $ find $(guix build julia --no-grafts) -type f \
> -exec grep '/tmp/guix-build-julia-1.5.3.drv-0' {} \;
> Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/lib/libjulia.so.1.5 matches
> Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/lib/julia/sys.so matches
> Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/lib/julia/libccalltest.so.debug matches
> Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/lib/julia/libllvmcalltest.so matches
> Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/bin/.julia-real matches
> Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/share/julia/base.cache matches
> Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/share/julia/test/depot/compiled/v1.5/Bar/HXSAn_w3IH9.ji matches
> Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/share/julia/test/depot/compiled/v1.5/Foo/MYb1d_w3IH9.ji matches
> Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/share/julia/test/depot/compiled/v1.5/Foo/TeeT6_w3IH9.ji matches
> Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/share/julia/test/depot/compiled/v1.5/Qux/YFfiR_w3IH9.ji matches
> Binary file /gnu/store/i1dgzqfjvkkjlfhpcwc33lz17vslq50y-julia-1.5.3/share/julia/test/depot/compiled/v1.5/Baz/rONVA_w3IH9.ji matches

In addition, "guix build julia --no-grafts -K" then something ugly to
show that for some files the reference of the source file itself are
included in their object version. Maybe I miss something.

Toggle snippet (94 lines)
$ for f in $(find /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/ -name "*.o" -type f -print | sed 's/\.o//' |sort);
do
[ -f ${f}.cpp ] \
&& echo "## grep ${f}.cpp *" \
&& find /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/ -type f -print \
| xargs -I {} grep ${f}.cpp {} ;
done

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/aotcompile.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/aotcompile.o correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/APInt-C.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/cgmemmgr.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/cgmemmgr.o correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/codegen.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/codegen.o correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/debuginfo.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/debuginfo.o correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/disasm.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/disasm.o correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/jitlayers.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/jitlayers.o correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-alloc-opt.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-alloc-opt.o correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-api.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-final-gc-lowering.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-final-gc-lowering.o correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-gc-invariant-verifier.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-late-gc-lowering.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-late-gc-lowering.o correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-lower-handlers.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-lower-handlers.o correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-muladd.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-multiversioning.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-multiversioning.o correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-pass-helpers.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-propagate-addrspaces.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-propagate-addrspaces.o correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-ptls.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-ptls.o correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-remove-addrspaces.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-remove-ni.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-simdloop.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/llvm-simdloop.o correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/processor.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/processor.o correspondant

## grep /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/runtime_ccall.cpp *
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/usr/lib/libjulia.so.1.5 correspondant
Fichier binaire /tmp/guix-build-julia-1.5.3.drv-0/julia-1.5.3/src/runtime_ccall.o correspondant

Cheers,
simon
Z
Z
zimoun wrote on 21 Sep 2021 12:21
Re: bug#48238: Julia 'Pkg.add' is broken
(name . Nicolò Balzarotti)(address . anothersms@gmail.com)
86wnna9qkd.fsf@gmail.com
Hi,

Using Guix fb32a38.

On Wed, 05 May 2021 at 15:22, zimoun <zimon.toutoune@gmail.com> wrote:

Toggle quote (3 lines)
> Packaging Julia stuff, I note something as a bug, I guess. Julia seems
> to keep references to the build directory in the output.

The consequence is that Julia is somehow broken.

Toggle snippet (32 lines)
$ rm -fr ~/.julia
$ guix environment --pure --ad-hoc julia \
-- julia -e 'using Pkg; Pkg.add("GZip"); using GZip'
WARNING: failed to select UTF-8 encoding, using ASCII
Installing known registries into `~/.julia`
ERROR: could not download https://pkg.julialang.org/registry/23338594-aafe-5451-b93e-139f81909106/18e4ba1e8fb9c86ed483b99c8260fcac80578dd9
Stacktrace:
[1] pkgerror(msg::String)
@ Pkg.Types /tmp/guix-build-julia-1.6.2.drv-0/julia-1.6.2/usr/share/julia/stdlib/v1.6/Pkg/src/Types.jl:55
[2] (::Pkg.Types.var"#82#85"{Pkg.Types.Context, String, Pkg.Types.RegistrySpec})(tmp::String)
@ Pkg.Types /tmp/guix-build-julia-1.6.2.drv-0/julia-1.6.2/usr/share/julia/stdlib/v1.6/Pkg/src/Types.jl:1035

[...]


caused by: IOError: could not spawn setenv(`7z x /tmp/jl_bcay5W-download.gz -so`,["PATH=:/gnu/store/b3gxgz9bpj3wyzcr423sib7mhkrlvzfs-profile/bin", "PWD=/home/simon/src/my-conf", "DISPLAY=:0", "LD_LIBRARY_PATH=/gnu/store/wdsw2l1wyxlbgn0bpm0wgbp8cs95xa3d-julia-1.6.2/bin/../lib/julia:/gnu/store/wdsw2l1wyxlbgn0bpm0wgbp8cs95xa3d-julia-1.6.2/bin/../lib", "XAUTHORITY=/run/user/1001/gdm/Xauthority", "GUIX_ENVIRONMENT=/gnu/store/b3gxgz9bpj3wyzcr423sib7mhkrlvzfs-profile", "LOGNAME=simon", "SHLVL=0", "JULIA_LOAD_PATH=:", "PAGER=cat", "USER=simon", "HOME=/home/simon", "TERM=ansi", "JULIA_DEPOT_PATH=:/gnu/store/b3gxgz9bpj3wyzcr423sib7mhkrlvzfs-profile/share/julia/:/gnu/store/b3gxgz9bpj3wyzcr423sib7mhkrlvzfs-profile/share/julia/", "OPENBLAS_MAIN_FREE=1"]): no such file or directory (ENOENT)
Stacktrace:

[...]

[9] download_verify_unpack(url::String, hash::Nothing, dest::String; tarball_path::Nothing, ignore_existence::Bool, force::Bool, verbose::Bool, quiet_download::Bool, io::Base.TTY)
@ Pkg.PlatformEngines /tmp/guix-build-julia-1.6.2.drv-0/julia-1.6.2/usr/share/julia/stdlib/v1.6/Pkg/src/PlatformEngines.jl:511

[...]

[25] add(pkg::String)
@ Pkg.API /tmp/guix-build-julia-1.6.2.drv-0/julia-1.6.2/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:75
[26] top-level scope
@ none:1


All the best,
simon
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send email to 48238@debbugs.gnu.org