Cannot build raku-json-marshal

Timo Paulssen timo+deb at wakelift.de
Thu Oct 24 11:22:48 BST 2024


Seems to work fine on my end, here I created a podman container to "gbp 
buildpackage" in:

root at a4d512944b54:/# cat /home/timo/raku-json-marshal_0.0.25-1_amd64.build
dpkg-buildpackage -us -uc -ui -i -I
dpkg-buildpackage: info: source package raku-json-marshal
dpkg-buildpackage: info: source version 0.0.25-1
dpkg-buildpackage: info: source distribution unstable
dpkg-buildpackage: info: source changed by Dominique Dumont 
<dod at debian.org>
dpkg-source -i -I --before-build .
dpkg-buildpackage: info: host architecture amd64
dpkg-source: info: using patch list from debian/patches/series
dpkg-source: info: applying rm-test-depends
debian/rules clean
dh clean
   dh_clean
dpkg-source -i -I -b .
dpkg-source: info: using source format '3.0 (quilt)'
dpkg-source: info: building raku-json-marshal using existing 
./raku-json-marshal_0.0.25.orig.tar.gz
dpkg-source: info: using patch list from debian/patches/series
dpkg-source: info: building raku-json-marshal in 
raku-json-marshal_0.0.25-1.debian.tar.xz
dpkg-source: info: building raku-json-marshal in 
raku-json-marshal_0.0.25-1.dsc
debian/rules binary
dh binary
   dh_update_autotools_config
   dh_autoreconf
   dh_raku_build
        Pre-compiling raku-json-marshal
        HOME=/home/timo/raku-json-marshal/debian/tmp/home/ 
RAKUDO_LOG_PRECOMP=1 RAKUDO_MODULE_DEBUG=1 
RAKUDO_RERESOLVE_DEPENDENCIES=0 
RAKULIB=inst\#/home/timo/raku-json-marshal/debian/tmp/pre-compiled/ raku 
/usr/share/perl6/tools/instal
l-dist.raku --for=vendor --from=. 
--to=/home/timo/raku-json-marshal/debian/tmp/pre-compiled/
1 RMD: Requested for settings CORE.d
1 RMD: Loading settings CORE.d
1 RMD: Loading bytecode from CORE.d.setting.moarvm
1 RMD: Loading bootstrap Perl6::BOOTSTRAP::v6d
1 RMD: Requested for settings CORE.c
1 RMD: Loading settings CORE.c
1 RMD: Loading bytecode from CORE.c.setting.moarvm
1 RMD: Loading bootstrap Perl6::BOOTSTRAP::v6c
2     RMD: Requested for settings CORE.d
2     RMD: Loading settings CORE.d
2     RMD: Loading bytecode from CORE.d.setting.moarvm
2     RMD: Loading bootstrap Perl6::BOOTSTRAP::v6d
2     RMD: Requested for settings CORE.c
2     RMD: Loading settings CORE.c
2     RMD: Loading bytecode from CORE.c.setting.moarvm
2     RMD: Loading bootstrap Perl6::BOOTSTRAP::v6c
2     RMD: Settings CORE.c loaded
2     RMD: Settings CORE.d loaded
2     RMD: Settings CORE.d already loaded
2     RMD: Attempting 'JSON::OptIn' as a pragma
2     RMD:   'JSON::OptIn' is not a valid pragma
2     RMD: Attempting to load 'JSON::OptIn'
2     RMD:   Late loading 'JSON::OptIn'
2     RMD: try-load source at 
/usr/lib/perl6/core/sources/B2976BD56E2DB034D70D1D8BF3CE2452B13BF9A2
2     RMD: Trying to load B2976BD56E2DB034D70D1D8BF3CE2452B13BF9A2
2     RMD:   Loaded from /usr/lib/perl6/core/precomp
2     RMD: Trying to load B2976BD56E2DB034D70D1D8BF3CE2452B13BF9A2.repo-id
2     RMD:   Loaded from /usr/lib/perl6/core/precomp
2     RMD: Repo changed:
              9D51C957DA0D10134F5CEEB1B244661E03797A3F
              954D374CC944795AA6FBF3CC14A4E239D5CF5A4E
            Need to re-check dependencies.
2     RMD: Loading precompiled
            /usr/lib/perl6/core/precomp/AF50A328AB74BE48ACBF2B65E07E64E53E5A7E10/B2/B2976BD56E2DB034D70D1D8BF3CE2452B13BF9A2
2     RMD: Settings CORE.d already loaded
2     RMD: try-load source at 
/usr/lib/perl6/vendor/sources/E67352E3EDC071D0A513EBEDBB138B0269C325D7
2     RMD: Trying to load E67352E3EDC071D0A513EBEDBB138B0269C325D7
2     RMD:   Loaded from /usr/lib/perl6/vendor/precomp
2     RMD: Trying to load E67352E3EDC071D0A513EBEDBB138B0269C325D7.repo-id
2     RMD:   Loaded from /usr/lib/perl6/vendor/precomp
2     RMD: Repo changed:
              41AD51CBF070179C219D406D787A6AED4206C7BD
              E4E12E57560BF23440BB72ADDBB0E9CFA6F0797C
            Need to re-check dependencies.
2     RMD: Repo chain changed:
              E4E12E57560BF23440BB72ADDBB0E9CFA6F0797C
              954D374CC944795AA6FBF3CC14A4E239D5CF5A4E
            Need to re-check dependencies.
2     RMD: Loading precompiled
            /usr/lib/perl6/vendor/precomp/AF50A328AB74BE48ACBF2B65E07E64E53E5A7E10/E6/E67352E3EDC071D0A513EBEDBB138B0269C325D7
2     RMD: Settings CORE.d already loaded
2     RMD: Performing imports for 'JSON::OptIn'
2     RMD: Imports for 'JSON::OptIn' done
2     RMD: Attempting to load 'JSON::Name'
2     RMD:   Late loading 'JSON::Name'
2     RMD: try-load source at 
/usr/lib/perl6/vendor/sources/E3066C4D42F07870D9E2CE772E07B4D9E37CC014
2     RMD: Trying to load E3066C4D42F07870D9E2CE772E07B4D9E37CC014
2     RMD:   Loaded from /usr/lib/perl6/vendor/precomp
2     RMD: Trying to load E3066C4D42F07870D9E2CE772E07B4D9E37CC014.repo-id
2     RMD:   Loaded from /usr/lib/perl6/vendor/precomp
2     RMD: Repo changed:
              02EB6EA329EF4C63431299639613295AAE2B9697
              E4E12E57560BF23440BB72ADDBB0E9CFA6F0797C
            Need to re-check dependencies.
2     RMD: Repo chain changed:
              E4E12E57560BF23440BB72ADDBB0E9CFA6F0797C
              954D374CC944795AA6FBF3CC14A4E239D5CF5A4E
            Need to re-check dependencies.
2     RMD: dependency: E67352E3EDC071D0A513EBEDBB138B0269C325D7 
/usr/lib/perl6/vendor/sources/E67352E3EDC071D0A513EBEDBB138B0269C325D7 
41CCE2976094B1512CAD126DD4561FEDC27A28C4 
CompUnit::DependencySpecification.new(:short-name<JSON::Opt
In>)
2     RMD: dependency checksum 41CCE2976094B1512CAD126DD4561FEDC27A28C4 
unit: 41CCE2976094B1512CAD126DD4561FEDC27A28C4
2     RMD: Loading precompiled
            /usr/lib/perl6/vendor/precomp/AF50A328AB74BE48ACBF2B65E07E64E53E5A7E10/E3/E3066C4D42F07870D9E2CE772E07B4D9E37CC014
2     RMD: Settings CORE.d already loaded
2     RMD: Performing imports for 'JSON::Name'
2     RMD: Imports for 'JSON::Name' done
2     RMD: Attempting to load 'JSON::Fast'
2     RMD:   Late loading 'JSON::Fast'
2     RMD: try-load source at 
/usr/lib/perl6/vendor/sources/C1DA909DAD9BF713751A74EBF038C545A1EA6ECC
2     RMD: Trying to load C1DA909DAD9BF713751A74EBF038C545A1EA6ECC
2     RMD:   Loaded from /usr/lib/perl6/vendor/precomp
2     RMD: Trying to load C1DA909DAD9BF713751A74EBF038C545A1EA6ECC.repo-id
2     RMD:   Loaded from /usr/lib/perl6/vendor/precomp
2     RMD: Repo changed:
              6E8B8BAA76A8D24F288C59AFFE5DCE4AC8800F6B
              E4E12E57560BF23440BB72ADDBB0E9CFA6F0797C
            Need to re-check dependencies.
2     RMD: Repo chain changed:
              E4E12E57560BF23440BB72ADDBB0E9CFA6F0797C
              954D374CC944795AA6FBF3CC14A4E239D5CF5A4E
            Need to re-check dependencies.
2     RMD: Loading precompiled
            /usr/lib/perl6/vendor/precomp/AF50A328AB74BE48ACBF2B65E07E64E53E5A7E10/C1/C1DA909DAD9BF713751A74EBF038C545A1EA6ECC
2     RMD: Settings CORE.d already loaded
2     RMD: Performing imports for 'JSON::Fast'
2     RMD: Imports for 'JSON::Fast' done
1 RMD: Settings CORE.c loaded
1 RMD: Settings CORE.d loaded
1 RMD: Attempting 'CompUnit::Repository::Staging' as a pragma
1 RMD:   'CompUnit::Repository::Staging' is not a valid pragma
1 RMD: Attempting to load 'CompUnit::Repository::Staging'
1 RMD:   Late loading 'CompUnit::Repository::Staging'
1 RMD: Parsing specs: inst#./debian/tmp/pre-compiled/
1 RMD: try-load source at 
/usr/lib/perl6/core/sources/B2976BD56E2DB034D70D1D8BF3CE2452B13BF9A2
1 RMD: Trying to load B2976BD56E2DB034D70D1D8BF3CE2452B13BF9A2
1 RMD:   Loaded from /usr/lib/perl6/core/precomp
1 RMD: Trying to load B2976BD56E2DB034D70D1D8BF3CE2452B13BF9A2.repo-id
1 RMD:   Loaded from /usr/lib/perl6/core/precomp
1 RMD: Repo changed:
          9D51C957DA0D10134F5CEEB1B244661E03797A3F
          09A00FB696303BA178C65D39C4E30886F35CFFB6
        Need to re-check dependencies.
1 RMD: Loading precompiled
        /usr/lib/perl6/core/precomp/AF50A328AB74BE48ACBF2B65E07E64E53E5A7E10/B2/B2976BD56E2DB034D70D1D8BF3CE2452B13BF9A2
1 RMD: Settings CORE.d already loaded
1 RMD: Performing imports for 'CompUnit::Repository::Staging'
1 RMD: Imports for 'CompUnit::Repository::Staging' done
1 RMD: Settings CORE.d already loaded
Precompiling DFBBB20BEC15476619A5921C98D6532E467F840C (JSON::Marshal)
1 RMD: Precompiling 
./debian/tmp/pre-compiled/sources/DFBBB20BEC15476619A5921C98D6532E467F840C 
into 
/home/timo/raku-json-marshal/debian/tmp/pre-compiled/precomp/AF50A328AB74BE48ACBF2B65E07E64E53E5A7E10/DF/DFBBB20BEC15476619A5921C98D653
2E467F840C.bc (   )
1 RMD: Precompiled 
./debian/tmp/pre-compiled/sources/DFBBB20BEC15476619A5921C98D6532E467F840C 
into 
/home/timo/raku-json-marshal/debian/tmp/pre-compiled/precomp/AF50A328AB74BE48ACBF2B65E07E64E53E5A7E10/DF/DFBBB20BEC15476619A5921C98D6532
E467F840C.bc
1 RMD: E67352E3EDC071D0A513EBEDBB138B0269C325D7 
/usr/lib/perl6/vendor/sources/E67352E3EDC071D0A513EBEDBB138B0269C325D7 
41CCE2976094B1512CAD126DD4561FEDC27A28C4 
CompUnit::DependencySpecification.new(:short-name<JSON::OptIn>)
1 RMD: E3066C4D42F07870D9E2CE772E07B4D9E37CC014 
/usr/lib/perl6/vendor/sources/E3066C4D42F07870D9E2CE772E07B4D9E37CC014 
D43EF2F10FE5DFA772A8232B005123AD8F3BC270 
CompUnit::DependencySpecification.new(:short-name<JSON::Name>,:version-matc
her<0.0.6+>)
1 RMD: C1DA909DAD9BF713751A74EBF038C545A1EA6ECC 
/usr/lib/perl6/vendor/sources/C1DA909DAD9BF713751A74EBF038C545A1EA6ECC 
05EDE7C69E372EFF1DC83CA565E221E23AFCA9C2 
CompUnit::DependencySpecification.new(:short-name<JSON::Fast>,:version-matc
her<0.16+>)
1 RMD: Writing dependencies and byte code to 
./debian/tmp/pre-compiled/precomp/AF50A328AB74BE48ACBF2B65E07E64E53E5A7E10/DF/DFBBB20BEC15476619A5921C98D6532E467F840C.tmp 
for source checksum: 5FD32D82A57FDBB6AEA3045C8883C472B696AF24
   dh_raku_test
        HOME=/home/timo/raku-json-marshal/debian/tmp/home/ 
/usr/bin/prove --exec "raku -Ilib" -l -v
t/010-use.t ...............
ok 1 - Can load "JSON::Marshal" ok
1..1
ok
t/020-marshal.t ...........
1..12
ok 1 - marshal object
ok 2 - didn't get the private attribute
ok 3 - bool right
ok 4 - string right
ok 5 - int right
ok 6 - arrays are the same
ok 7 - is built attribute is included
ok 8 - inner class rat the same
ok 9 - inner hash 1
ok 10 - inner hash 2
ok 11 - marshal object with sorted keys
ok 12 - keys are in the order expected
ok
t/030-trait.t .............
# Subtest: marshalled-by trait with Code
    ok 1 - marshall with attribute trait (code)
    ok 2 - parse the resulting JSON
    ok 3 - got something back
    ok 4 - and has the right value
    ok 5 - marshall with attrbute trait (code) but attribute not defined
    ok 6 - got sensible JSON back
    ok 7 - got something back
    ok 8 - got the key
    ok 9 - and has the right value (Nil)
    1..9
ok 1 - marshalled-by trait with Code
# Subtest: marshalled-by trait with Method name
    ok 1 - marshall with attrbute trait (method name)
    ok 2 - got sensible JSON back
    ok 3 - got something back
    ok 4 - and has the right value
    ok 5 - marshall with attrbute trait (method name) but attribute not 
defined
    ok 6 - got sensible JSON back
    ok 7 - got something back
    ok 8 - got the key
    ok 9 - and has the right value (Nil)
    1..9
ok 2 - marshalled-by trait with Method name
1..2
ok
t/040-json-name.t .........
ok 1 - create on object with a json-name attribute
ok 2 - marshal that object
ok 3 - parse the JSON
ok 4 - and we got the key back with the json name
ok 5 - create on object with a json-name attribute but not defined
ok 6 - marshal that object
1..6
ok
t/050-skip-null.t .........
1..15
ok 1 - apply skip-null to marshal
ok 2 - and the (null) id was skipped
ok 3 - and the empty stuff was skipped
ok 4 - and the empty things was skipped
ok 5 - but we still got the defined one
ok 6 - apply skip-null trait to single attribute
ok 7 - and the (null) id was skipped
ok 8 - but we still got the defined one
ok 9 - one not defined but without trait still there
ok 10 - and it isn't defined
ok 11 - one with the trait but with value is there
ok 12 - the empty hash is there
ok 13 - the skipped one isn't there
ok 14 - skip-null with a deep struct
ok 15 - no empty keys are included
ok
t/060-array.t .............
ok 1 - marshal an array
ok 2 - got right object in first element
ok 3 - got right object in second element
1..3
ok
t/070-inheritance.t .......
ok 1 - marshal object
ok 2 - got string attribute from child class
ok 3 - got number attribute from child class
ok 4 - marshal object
ok 5 - and it got the right custom marshaller
1..5
ok
t/080-type-constraints.t ..
ok 1 - create object with anonymous constraint (no arguments)
ok 2 - marshal that
ok 3 - got some sane JSON
ok 4 - and we got the expected key
ok 5 - and is 'null' as expected
ok 6 - create object with anonymous constraint positional argument
ok 7 - marshal that
ok 8 - got some sane JSON
ok 9 - and we got the expected key
ok 10 - and is a Positional as expected
ok 11 - create object with anonymous constraint associative argument
ok 12 - marshal that
ok 13 - got some sane JSON
ok 14 - and we got the expected key
ok 15 - and is a Associative as expected
ok 16 - with the  expected value
1..16
ok
t/090-issue-8.t ...........
# Subtest: class with no attributes
    ok 1 - marshal type-object
    ok 2 - roundtripped value not defined
    ok 3 - it's an Any
    ok 4 - and it's not a hash
    1..4
ok 1 - class with no attributes
# Subtest: class with attributes
    ok 1 - marshal type-object
    ok 2 - roundtripped value not defined
    ok 3 - it's an Any
    ok 4 - and it's not a hash
    1..4
ok 2 - class with attributes
# Subtest: Hash type object
    ok 1 - marshal type-object
    ok 2 - roundtripped value not defined
    ok 3 - it's an Any
    ok 4 - and it's not a hash
    1..4
ok 3 - Hash type object
# Subtest: Array type object
    ok 1 - marshal type-object
    ok 2 - roundtripped value not defined
    ok 3 - it's an Any
    ok 4 - and it's not a hash
    1..4
ok 4 - Array type object
1..4
ok
t/100-meta6-issue-22.t ....
ok 1 - create object with json-name and marshalled-by attribute not 
provided
ok 2 - and try to marshal it
1..2
ok
t/110-skip.t ..............
ok 1 - the skipped attribute isn't in the JSON
ok 2 - the not skipped attribute is in the JSON
1..2
ok
t/120-pretty.t ............
1..4
ok 1 - pretty-marshal object doesn't fail
ok 2 - marshalled JSON is pretty
ok 3 - compact-marshal object
ok 4 - marshalled JSON is compact
ok
t/130-custom-accessor.t ...
ok 1 - got the right value for straight accessor
ok 2 - got the right value for custom accessor
1..2
ok
t/140-opt-in.t ............
1..11
ok 1 - marshal() with opt-in
ok 2 - explicitly opted in
ok 3 - not opted-in at all
ok 4 - skipped
ok 5 - skip-null
ok 6 - is built but not opted-in
ok 7 - skip-null with value
ok 8 - marshalled-by implicit opt-in (method)
ok 9 - marshalled-by implicit opt-in (sub)
ok 10 - json-name implicit opt-in
ok 11 - opted-in private
ok
All tests successful.
Files=14, Tests=85,  3 wallclock secs ( 0.02 usr  0.02 sys +  4.38 cusr 
  0.63 csys =  5.05 CPU)
Result: PASS
   create-stamp debian/debhelper-build-stamp
   dh_raku_install
        Checking installation of raku-json-marshal
        Installing raku-json-marshal package files
   dh_installdocs
   dh_installchangelogs
   dh_perl
   dh_link
   dh_strip_nondeterminism
   dh_compress
   dh_fixperms
   dh_missing
   dh_dwz -a
   dh_strip -a
   dh_makeshlibs -a
   dh_shlibdeps -a
   dh_installdeb
   dh_gencontrol
   dh_md5sums
   dh_builddeb
dpkg-deb: building package 'raku-json-marshal' in 
'../raku-json-marshal_0.0.25-1_amd64.deb'.
dpkg-genbuildinfo -O../raku-json-marshal_0.0.25-1_amd64.buildinfo
dpkg-genchanges -O../raku-json-marshal_0.0.25-1_amd64.changes
dpkg-genchanges: info: including full source code in upload
dpkg-source -i -I --after-build .
dpkg-source: info: unapplying rm-test-depends
dpkg-buildpackage: info: full upload (original source is included)
Now running lintian raku-json-marshal_0.0.25-1_amd64.changes ...
Finished running lintian.
Now signing changes and any dsc files...
signfile dsc raku-json-marshal_0.0.25-1.dsc Dominique Dumont 
<dod at debian.org>
gpg: Fatal: can't create directory '//.gnupg': Permission denied
debsign: gpg error occurred!  Aborting....

Not exactly sure what's going wrong in your log, maybe the output of 
"strace -f" or -ff could give hints as to what happens leading up to the 
exit(1) from the nested subprocess.

What happens when you try to just

env RAKUDO_MODULE_DEBUG=1 rakudo -e 'use JSON::Marshal;'

and

rakudo -e 'use JSON::Marshal;'

which should also attempt to compile that stuff, but may give more output?

If you need, I can make the container image available, but it's barely 
more than installing gbp, dh-sequence-raku, the dependencies, and then 
running "gbp buildpackage" in a clone of our repo.

Hope that helps
   - Timo

On 10/23/24 18:10, Dominique Dumont wrote:
> Hi
>
> On my system with raku 2022.12 and up to date raku modules,  raku-json-marshal build fails with:
>
> Precompiling DFBBB20BEC15476619A5921C98D6532E467F840C (JSON::Marshal)
>   1 RMD: Precompiling ./debian/tmp/pre-compiled/sources/DFBBB20BEC15476619A5921C98D6532E467F840C into /home/domi/debian-dev/build-area/raku-json-marshal-0.0.25/debian/tmp/pre-compiled/precomp/AF50A328AB74BE48ACBF2B65E07E64E53E5A7E10/DF/DFBBB20BEC15476619A5921C98D6532E467F840C.bc (   )
>   1 RMD: Precompiling ./debian/tmp/pre-compiled/sources/DFBBB20BEC15476619A5921C98D6532E467F840C failed: 1
> E67352E3EDC071D0A513EBEDBB138B0269C325D7/usr/lib/perl6/vendor/sources/E67352E3EDC071D0A513EBEDBB138B0269C325D782B75DF6293447F6D8868FC53C8895188901A29DCompUnit::DependencySpecification.new(:short-name<JSON::OptIn>) E3066C4D42F07870D9E2CE772E07B4D9E37CC014/usr/lib/perl6/vendor/sources/E3066C4D42F07870D9E2CE772E07B4D9E37CC01415A3A7687D3CC3B7639661819238C3C34696CAF8CompUnit::DependencySpecification.new(:short-name<JSON::Name>,:version-matcher<0.0.6+>)
>    in sub MAIN at /usr/share/perl6/tools/install-dist.raku line 19
>    in block <unit> at /usr/share/perl6/tools/install-dist.raku line 3
>
> dh_raku_build: error: HOME=/home/domi/debian-dev/build-area/raku-json-marshal-0.0.25/debian/tmp/home/ RAKUDO_LOG_PRECOMP=1 RAKUDO_MODULE_DEBUG=1 RAKUDO_RERESOLVE_DEPENDENCIES=0 RAKULIB=inst\#/home/domi/debian-dev/build-area/raku-json-marshal-0.0.25/debian/tmp/pre-compiled/ raku /usr/share/perl6/tools/install-dist.raku --for=vendor --from=. --to=/home/domi/debian-dev/build-area/raku-json-marshal-0.0.25/debian/tmp/pre-compiled/ returned exit code 1
> make: *** [debian/rules:21: binary] Error 25
> dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
> debuild: fatal error at line 1184:
> dpkg-buildpackage -us -uc -ui -i -I failed
>
> Do you have the same problem on your side ?
>
> All the best
>
> Dominique
>
>



More information about the Pkg-rakudo-devel mailing list