@aaronp: thanks for the commit proposition. It is now included in the release I just pushed. @Nocifer: let us know if this helps.
This is a workaround until the next dav1d release.
Git Clone URL: | https://aur.archlinux.org/lib32-dav1d.git (read-only, click to copy) |
---|---|
Package Base: | lib32-dav1d |
Description: | AV1 cross-platform decoder focused on speed and correctness (32 bit) |
Upstream URL: | https://code.videolan.org/videolan/dav1d/ |
Licenses: | BSD-2-Clause |
Submitter: | oxalin |
Maintainer: | oxalin |
Last Packager: | oxalin |
Votes: | 7 |
Popularity: | 0.000000 |
First Submitted: | 2019-08-15 16:53 (UTC) |
Last Updated: | 2024-12-11 04:06 (UTC) |
@aaronp: thanks for the commit proposition. It is now included in the release I just pushed. @Nocifer: let us know if this helps.
This is a workaround until the next dav1d release.
https://code.videolan.org/videolan/dav1d/-/commit/c6a08b3aa1ee99dade53e5e32033bc1d14455a22.patch
this should fix build issues.
Just as I reported in the lib32-shaderc thread, I'm getting similar "undefined reference" errors with this package as well:
[2/4] Linking target src/libdav1d.so.5.1.1
FAILED: src/libdav1d.so.5.1.1
gcc -m32 -o src/libdav1d.so.5.1.1 src/libdav1d.so.5.1.1.p/cpuid.obj src/libdav1d.so.5.1.1.p/msac.obj src/libdav1d.so.5.1.1.p/cdef_avx2.obj src/libdav1d.so.5.1.1.p/itx_avx2.obj src/libdav1d.so.5.1.1.p/looprestoration_avx2.obj src/libdav1d.so.5.1.1.p/cdef_sse.obj src/libdav1d.so.5.1.1.p/itx_sse.obj src/libdav1d.so.5.1.1.p/cdef_avx512.obj src/libdav1d.so.5.1.1.p/mc_avx512.obj src/libdav1d.so.5.1.1.p/mc_avx2.obj src/libdav1d.so.5.1.1.p/film_grain_avx2.obj src/libdav1d.so.5.1.1.p/ipred_avx2.obj src/libdav1d.so.5.1.1.p/loopfilter_avx2.obj src/libdav1d.so.5.1.1.p/film_grain_sse.obj src/libdav1d.so.5.1.1.p/ipred_sse.obj src/libdav1d.so.5.1.1.p/loopfilter_sse.obj src/libdav1d.so.5.1.1.p/looprestoration_sse.obj src/libdav1d.so.5.1.1.p/mc_sse.obj src/libdav1d.so.5.1.1.p/cdef16_avx2.obj src/libdav1d.so.5.1.1.p/film_grain16_avx2.obj src/libdav1d.so.5.1.1.p/ipred16_avx2.obj src/libdav1d.so.5.1.1.p/itx16_avx2.obj src/libdav1d.so.5.1.1.p/loopfilter16_avx2.obj src/libdav1d.so.5.1.1.p/looprestoration16_avx2.obj src/libdav1d.so.5.1.1.p/mc16_avx2.obj src/libdav1d.so.5.1.1.p/cdef16_sse.obj src/libdav1d.so.5.1.1.p/film_grain16_sse.obj src/libdav1d.so.5.1.1.p/ipred16_sse.obj src/libdav1d.so.5.1.1.p/itx16_sse.obj src/libdav1d.so.5.1.1.p/loopfilter16_sse.obj src/libdav1d.so.5.1.1.p/looprestoration16_sse.obj src/libdav1d.so.5.1.1.p/mc16_sse.obj src/libdav1d.so.5.1.1.p/cdf.c.o src/libdav1d.so.5.1.1.p/cpu.c.o src/libdav1d.so.5.1.1.p/data.c.o src/libdav1d.so.5.1.1.p/decode.c.o src/libdav1d.so.5.1.1.p/dequant_tables.c.o src/libdav1d.so.5.1.1.p/getbits.c.o src/libdav1d.so.5.1.1.p/intra_edge.c.o src/libdav1d.so.5.1.1.p/itx_1d.c.o src/libdav1d.so.5.1.1.p/lf_mask.c.o src/libdav1d.so.5.1.1.p/log.c.o src/libdav1d.so.5.1.1.p/mem.c.o src/libdav1d.so.5.1.1.p/msac.c.o src/libdav1d.so.5.1.1.p/obu.c.o src/libdav1d.so.5.1.1.p/picture.c.o src/libdav1d.so.5.1.1.p/qm.c.o src/libdav1d.so.5.1.1.p/ref.c.o src/libdav1d.so.5.1.1.p/refmvs.c.o src/libdav1d.so.5.1.1.p/scan.c.o src/libdav1d.so.5.1.1.p/tables.c.o src/libdav1d.so.5.1.1.p/warpmv.c.o src/libdav1d.so.5.1.1.p/wedge.c.o src/libdav1d.so.5.1.1.p/x86_cpu.c.o src/libdav1d.so.5.1.1.p/x86_msac_init.c.o src/libdav1d_bitdepth_8.a.p/cdef_apply_tmpl.c.o src/libdav1d_bitdepth_8.a.p/cdef_tmpl.c.o src/libdav1d_bitdepth_8.a.p/fg_apply_tmpl.c.o src/libdav1d_bitdepth_8.a.p/film_grain_tmpl.c.o src/libdav1d_bitdepth_8.a.p/ipred_prepare_tmpl.c.o src/libdav1d_bitdepth_8.a.p/ipred_tmpl.c.o src/libdav1d_bitdepth_8.a.p/itx_tmpl.c.o src/libdav1d_bitdepth_8.a.p/lf_apply_tmpl.c.o src/libdav1d_bitdepth_8.a.p/loopfilter_tmpl.c.o src/libdav1d_bitdepth_8.a.p/looprestoration_tmpl.c.o src/libdav1d_bitdepth_8.a.p/lr_apply_tmpl.c.o src/libdav1d_bitdepth_8.a.p/mc_tmpl.c.o src/libdav1d_bitdepth_8.a.p/recon_tmpl.c.o src/libdav1d_bitdepth_8.a.p/x86_cdef_init_tmpl.c.o src/libdav1d_bitdepth_8.a.p/x86_film_grain_init_tmpl.c.o src/libdav1d_bitdepth_8.a.p/x86_ipred_init_tmpl.c.o src/libdav1d_bitdepth_8.a.p/x86_itx_init_tmpl.c.o src/libdav1d_bitdepth_8.a.p/x86_loopfilter_init_tmpl.c.o src/libdav1d_bitdepth_8.a.p/x86_looprestoration_init_tmpl.c.o src/libdav1d_bitdepth_8.a.p/x86_mc_init_tmpl.c.o src/libdav1d_bitdepth_16.a.p/cdef_apply_tmpl.c.o src/libdav1d_bitdepth_16.a.p/cdef_tmpl.c.o src/libdav1d_bitdepth_16.a.p/fg_apply_tmpl.c.o src/libdav1d_bitdepth_16.a.p/film_grain_tmpl.c.o src/libdav1d_bitdepth_16.a.p/ipred_prepare_tmpl.c.o src/libdav1d_bitdepth_16.a.p/ipred_tmpl.c.o src/libdav1d_bitdepth_16.a.p/itx_tmpl.c.o src/libdav1d_bitdepth_16.a.p/lf_apply_tmpl.c.o src/libdav1d_bitdepth_16.a.p/loopfilter_tmpl.c.o src/libdav1d_bitdepth_16.a.p/looprestoration_tmpl.c.o src/libdav1d_bitdepth_16.a.p/lr_apply_tmpl.c.o src/libdav1d_bitdepth_16.a.p/mc_tmpl.c.o src/libdav1d_bitdepth_16.a.p/recon_tmpl.c.o src/libdav1d_bitdepth_16.a.p/x86_cdef_init_tmpl.c.o src/libdav1d_bitdepth_16.a.p/x86_film_grain_init_tmpl.c.o src/libdav1d_bitdepth_16.a.p/x86_ipred_init_tmpl.c.o src/libdav1d_bitdepth_16.a.p/x86_itx_init_tmpl.c.o src/libdav1d_bitdepth_16.a.p/x86_loopfilter_init_tmpl.c.o src/libdav1d_bitdepth_16.a.p/x86_looprestoration_init_tmpl.c.o src/libdav1d_bitdepth_16.a.p/x86_mc_init_tmpl.c.o src/libdav1d_entrypoint.a.p/lib.c.o src/libdav1d_entrypoint.a.p/thread_task.c.o -flto -Wl,--as-needed -Wl,--no-undefined -shared -fPIC -Wl,--start-group -Wl,-soname,libdav1d.so.5 -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -march=native -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -flto -pthread -ldl -Wl,--end-group
/usr/bin/ld: src/libdav1d.so.5.1.1.p/ipred16_sse.obj: warning: relocation against `_dav1d_filter_intra_taps' in read-only section `.text'
/usr/bin/ld: /tmp/ccOsSZKm.ltrans0.ltrans.o: in function `read_tx_tree':
<artificial>:(.text+0x112): undefined reference to `dav1d_msac_decode_bool_adapt_sse2'
/usr/bin/ld: /tmp/ccOsSZKm.ltrans0.ltrans.o: in function `read_mv_component_diff':
<artificial>:(.text+0x671): undefined reference to `dav1d_msac_decode_bool_adapt_sse2'
...
...etc.
I can build other lib32 packages fine, and I've also tried my luck (and failed) with building inside a clean chroot, so this shouldn't be an issue with my system's configuration; but of course I'm not ruling anything out.
Also, I know I'm using march=native here but I've already tried with the default march=x86-64 mtune=generic and still no dice, so it's not that.
Any help would be greatly appreciated, because at this point I'm almost resolved to dealing with it the noobish way: uninstalling lib32-gst-plugins-bad (which both this package and lib32-shaderc are dependencies of) and calling it a day.
I would be willing to have a co-maintainer if someone is interested. I do want to continue maintaining my/these packages, but the last few weeks have been pretty busy with work and life. So I haven't had time to update the package. This should be fixed later today.
There is a conflict between the newly released dav1d 0.9.0-1 and this lib32-libdav1d package which is 0.8.2.
To temporarily get around the problem just edit the PKGBUILD file and change "pkgver=0.8.2" to "pkgver=0.9.0", and then set the sha512sums and b2sums values to "SKIP". If you're paranoid you can look up the checksum values but I didn't care.
Is anybody still experiencing the error previously reported by kode54? While I was looking for commits to fix the error, I just rebuilt the package and I had no error today (some warnings, but they are harmless).
@oxalin : I just found the commit at the 0.7.1 tag, did:
git format-patch <commit hash>
Which generates a bunch of 0001-whatever.patch, and cat 00*.patch > temp.patch
, and applied that to the 0.7.1 source this AUR package extracted with makepkg -o
and attempted to build with makepkg -e
. This was after 0.7.1 itself failed to build.
@kode54 : do you have a link to the patches, commits or an issue that I could look into?
It also appears to be an unfixed upstream failure, as I got the same issue when I patched the source tree to the latest git master version.
E: They did have to apply two separate fixes for nasm v2.15, perhaps they also need to apply nasm v2.15 fixes for 32 bit building as well.
Pinned Comments
oxalin commented on 2023-05-27 03:44 (UTC)
Please, don't flag this package as out-of-date if it is using the same version as the native package.
If you have dependencies problems when building, flagging the package as out-of-date if there is no updated dav1d's version is not the way to go. For this kind of situations, share a comment with whatever error you are uncountering or whatever fix you propose.
oxalin commented on 2020-05-25 15:49 (UTC) (edited on 2020-05-25 15:55 (UTC) by oxalin)
About GPG, it is up to you to import the missing public key. If you receive an error about it, this is ffmpeg's project public key. Something like the following should do the trick: gpg --recv-keys 7180713BE58D1ADC