Comments (4)
Due to legal reasons (mainly @radiorabe not having an MPEG-LA license and us not planning on getting one) we cannot distribute ocaml-fdkaac binaries atm.
What we can do is provide instructions on how you can build your own... I updated the usage section in the centos-rpm-ocaml-fdkaac repo to provide detailed instructions on how you can build you own RPM using fdk-aac from RPMfusion nonfree. I also updated the specfile so it builds a version of ocaml-fdkaac that should work with 1.4.3.
I usually run this in the quay.io/hairmare/centos8_rpmdev
container (see folded example below). Let me know if this works out for you or if you need any further assistance in getting fdk-aac working again.
container example with output
$ docker run --rm -ti -v `pwd`:'/git' -v `pwd`/RPMS:/root/rpmbuild/RPMS quay.io/hairmare/centos8_rpmdev bash
[root@dd916d343ef4 git]# dnf install -y \
> http://download1.rpmfusion.org/free/el/updates/8/x86_64/r/rpmfusion-free-release-8-0.1.noarch.rpm \
> http://download1.rpmfusion.org/nonfree/el/updates/8/x86_64/r/rpmfusion-nonfree-release-8-0.1.noarch.rpm
Failed to set locale, defaulting to C.UTF-8
CentOS-8 - AppStream 3.5 MB/s | 5.8 MB 00:01
CentOS-8 - Base 3.1 MB/s | 2.2 MB 00:00
CentOS-8 - Extras 19 kB/s | 8.6 kB 00:00
Extra Packages for Enterprise Linux Modular 8 - x86_64 113 kB/s | 98 kB 00:00
Extra Packages for Enterprise Linux 8 - x86_64 8.8 MB/s | 8.4 MB 00:00
rpmfusion-free-release-8-0.1.noarch.rpm 74 kB/s | 11 kB 00:00
rpmfusion-nonfree-release-8-0.1.noarch.rpm 218 kB/s | 11 kB 00:00
Dependencies resolved.
==============================================================================================================================================================================================================================================
Package Architecture Version Repository Size
==============================================================================================================================================================================================================================================
Installing:
rpmfusion-free-release noarch 8-0.1 @commandline 11 k
rpmfusion-nonfree-release noarch 8-0.1 @commandline 11 k
Transaction Summary
==============================================================================================================================================================================================================================================
Install 2 Packages
Total size: 22 k
Installed size: 7.6 k
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : rpmfusion-free-release-8-0.1.noarch 1/2
Installing : rpmfusion-nonfree-release-8-0.1.noarch 2/2
Verifying : rpmfusion-free-release-8-0.1.noarch 1/2
Verifying : rpmfusion-nonfree-release-8-0.1.noarch 2/2
Installed:
rpmfusion-free-release-8-0.1.noarch rpmfusion-nonfree-release-8-0.1.noarch
Complete!
[root@dd916d343ef4 git]#
[root@dd916d343ef4 git]# # the RaBe-LSD liquidsoap binaries are using an OCaml build chain based on a backport of fc33 ocaml
[root@dd916d343ef4 git]# curl -o /etc/yum.repos.d/ocaml.repo \
> "https://download.opensuse.org/repositories/home:/radiorabe:/liquidsoap:/ocaml/CentOS_8/home:radiorabe:liquidsoap:ocaml.repo"
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 308 100 308 0 0 2905 0 --:--:-- --:--:-- --:--:-- 2905
[root@dd916d343ef4 git]#
[root@dd916d343ef4 git]# rpmdev-setuptree
[root@dd916d343ef4 git]#
[root@dd916d343ef4 git]# spectool -R -g ocaml-fdkaac.spec
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Getting https://github.com/savonet/ocaml-fdkaac/archive/0.3.2.tar.gz?#/ocaml-fdkaac-0.3.2.tar.gz to /root/rpmbuild/SOURCES/ocaml-fdkaac-0.3.2.tar.gz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 127 100 127 0 0 535 0 --:--:-- --:--:-- --:--:-- 535
100 15369 0 15369 0 0 30017 0 --:--:-- --:--:-- --:--:-- 30017
[root@dd916d343ef4 git]#
[root@dd916d343ef4 git]# dnf builddep -y ocaml-fdkaac.spec
Failed to set locale, defaulting to C.UTF-8
OCaml 4.11 (CentOS_8) 617 kB/s | 224 kB 00:00
RPM Fusion for EL 8 - Free - Updates 323 kB/s | 258 kB 00:00
RPM Fusion for EL 8 - Nonfree - Updates 268 kB/s | 89 kB 00:00
Dependencies resolved.
==============================================================================================================================================================================================================================================
Package Architecture Version Repository Size
==============================================================================================================================================================================================================================================
Installing:
fdk-aac-devel x86_64 2.0.0-3.el8 rpmfusion-nonfree-updates 768 k
ocaml x86_64 4.11.1-0.1.2.rabe home_radiorabe_liquidsoap_ocaml 72 M
ocaml-dune-devel x86_64 2.7.1-0.1.2.rabe home_radiorabe_liquidsoap_ocaml 3.2 M
ocaml-findlib x86_64 1.8.1-0.1.2.rabe home_radiorabe_liquidsoap_ocaml 725 k
Installing dependencies:
fdk-aac x86_64 2.0.0-3.el8 rpmfusion-nonfree-updates 683 k
ocaml-compiler-libs x86_64 4.11.1-0.1.2.rabe home_radiorabe_liquidsoap_ocaml 13 M
ocaml-csexp x86_64 1.3.2-0.1.2.rabe home_radiorabe_liquidsoap_ocaml 47 k
ocaml-csexp-devel x86_64 1.3.2-0.1.2.rabe home_radiorabe_liquidsoap_ocaml 72 k
ocaml-dune x86_64 2.7.1-0.1.2.rabe home_radiorabe_liquidsoap_ocaml 3.8 M
ocaml-runtime x86_64 4.11.1-0.1.2.rabe home_radiorabe_liquidsoap_ocaml 2.8 M
Transaction Summary
==============================================================================================================================================================================================================================================
Install 10 Packages
Total download size: 97 M
Installed size: 361 M
Downloading Packages:
(1/10): ocaml-csexp-1.3.2-0.1.2.rabe.x86_64.rpm 156 kB/s | 47 kB 00:00
(2/10): ocaml-csexp-devel-1.3.2-0.1.2.rabe.x86_64.rpm 410 kB/s | 72 kB 00:00
(3/10): ocaml-dune-2.7.1-0.1.2.rabe.x86_64.rpm 2.9 MB/s | 3.8 MB 00:01
(4/10): ocaml-compiler-libs-4.11.1-0.1.2.rabe.x86_64.rpm 6.4 MB/s | 13 MB 00:02
(5/10): ocaml-findlib-1.8.1-0.1.2.rabe.x86_64.rpm 2.7 MB/s | 725 kB 00:00
(6/10): ocaml-dune-devel-2.7.1-0.1.2.rabe.x86_64.rpm 3.7 MB/s | 3.2 MB 00:00
(7/10): ocaml-runtime-4.11.1-0.1.2.rabe.x86_64.rpm 4.7 MB/s | 2.8 MB 00:00
(8/10): fdk-aac-2.0.0-3.el8.x86_64.rpm 1.3 MB/s | 683 kB 00:00
(9/10): fdk-aac-devel-2.0.0-3.el8.x86_64.rpm 2.4 MB/s | 768 kB 00:00
(10/10): ocaml-4.11.1-0.1.2.rabe.x86_64.rpm 12 MB/s | 72 MB 00:05
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total 16 MB/s | 97 MB 00:05
warning: /var/cache/dnf/home_radiorabe_liquidsoap_ocaml-821585843ca20ba9/packages/ocaml-4.11.1-0.1.2.rabe.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID a62f73c5: NOKEY
OCaml 4.11 (CentOS_8) 12 kB/s | 1.1 kB 00:00
Importing GPG key 0xA62F73C5:
Userid : "home:radiorabe OBS Project <home:[email protected]>"
Fingerprint: E603 B0F1 A6E8 9759 F239 56C9 9ED9 B42E A62F 73C5
From : https://download.opensuse.org/repositories/home:/radiorabe:/liquidsoap:/ocaml/CentOS_8/repodata/repomd.xml.key
Key imported successfully
warning: /var/cache/dnf/rpmfusion-nonfree-updates-4b07c573777c5e1e/packages/fdk-aac-2.0.0-3.el8.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID bdda8475: NOKEY
RPM Fusion for EL 8 - Nonfree - Updates 1.2 MB/s | 1.7 kB 00:00
Importing GPG key 0xBDDA8475:
Userid : "RPM Fusion nonfree repository for EL (8) <[email protected]>"
Fingerprint: CF9F D59F 61D6 6121 46CD AC8E 14B6 792D BDDA 8475
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-el-8
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : ocaml-runtime-4.11.1-0.1.2.rabe.x86_64 1/10
Installing : ocaml-4.11.1-0.1.2.rabe.x86_64 2/10
Installing : ocaml-compiler-libs-4.11.1-0.1.2.rabe.x86_64 3/10
Installing : ocaml-csexp-1.3.2-0.1.2.rabe.x86_64 4/10
Installing : ocaml-csexp-devel-1.3.2-0.1.2.rabe.x86_64 5/10
Installing : ocaml-dune-2.7.1-0.1.2.rabe.x86_64 6/10
Installing : fdk-aac-2.0.0-3.el8.x86_64 7/10
Running scriptlet: fdk-aac-2.0.0-3.el8.x86_64 7/10
Installing : fdk-aac-devel-2.0.0-3.el8.x86_64 8/10
Installing : ocaml-dune-devel-2.7.1-0.1.2.rabe.x86_64 9/10
Installing : ocaml-findlib-1.8.1-0.1.2.rabe.x86_64 10/10
Running scriptlet: ocaml-findlib-1.8.1-0.1.2.rabe.x86_64 10/10
Verifying : ocaml-4.11.1-0.1.2.rabe.x86_64 1/10
Verifying : ocaml-compiler-libs-4.11.1-0.1.2.rabe.x86_64 2/10
Verifying : ocaml-csexp-1.3.2-0.1.2.rabe.x86_64 3/10
Verifying : ocaml-csexp-devel-1.3.2-0.1.2.rabe.x86_64 4/10
Verifying : ocaml-dune-2.7.1-0.1.2.rabe.x86_64 5/10
Verifying : ocaml-dune-devel-2.7.1-0.1.2.rabe.x86_64 6/10
Verifying : ocaml-findlib-1.8.1-0.1.2.rabe.x86_64 7/10
Verifying : ocaml-runtime-4.11.1-0.1.2.rabe.x86_64 8/10
Verifying : fdk-aac-2.0.0-3.el8.x86_64 9/10
Verifying : fdk-aac-devel-2.0.0-3.el8.x86_64 10/10
Installed:
fdk-aac-2.0.0-3.el8.x86_64 fdk-aac-devel-2.0.0-3.el8.x86_64 ocaml-4.11.1-0.1.2.rabe.x86_64 ocaml-compiler-libs-4.11.1-0.1.2.rabe.x86_64 ocaml-csexp-1.3.2-0.1.2.rabe.x86_64
ocaml-csexp-devel-1.3.2-0.1.2.rabe.x86_64 ocaml-dune-2.7.1-0.1.2.rabe.x86_64 ocaml-dune-devel-2.7.1-0.1.2.rabe.x86_64 ocaml-findlib-1.8.1-0.1.2.rabe.x86_64 ocaml-runtime-4.11.1-0.1.2.rabe.x86_64
Complete!
[root@dd916d343ef4 git]#
[root@dd916d343ef4 git]# rpmbuild -ba ocaml-fdkaac.spec
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.tspzRt
+ umask 022
+ cd /root/rpmbuild/BUILD
+ cd /root/rpmbuild/BUILD
+ rm -rf ocaml-fdkaac-0.3.2
+ /usr/bin/gzip -dc /root/rpmbuild/SOURCES/ocaml-fdkaac-0.3.2.tar.gz
+ /usr/bin/tar -xof -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd ocaml-fdkaac-0.3.2
+ /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.bFJ76U
+ umask 022
+ cd /root/rpmbuild/BUILD
+ cd ocaml-fdkaac-0.3.2
+ dune build
gcc src/fdkaac_stubs.o
In file included from /usr/lib64/ocaml/caml/custom.h:23,
from fdkaac_stubs.c:25:
fdkaac_stubs.c: In function 'ocaml_fdkaac_encode':
/usr/lib64/ocaml/caml/mlvalues.h:265:24: warning: passing argument 1 of 'memcpy' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
#define String_val(x) ((const char *) Bp_val(x))
~^~~~~~~~~~~~~~~~~~~~~~~~~
fdkaac_stubs.c:234:10: note: in expansion of macro 'String_val'
memcpy(String_val(ret), outbuf, outArgs.numOutBytes);
^~~~~~~~~~
In file included from /usr/include/features.h:428,
from /usr/include/bits/libc-header-start.h:33,
from /usr/include/stdint.h:26,
from /usr/lib/gcc/x86_64-redhat-linux/8/include/stdint.h:9,
from /usr/lib64/ocaml/caml/config.h:61,
from /usr/lib64/ocaml/caml/mlvalues.h:22,
from /usr/lib64/ocaml/caml/custom.h:23,
from fdkaac_stubs.c:25:
/usr/include/bits/string_fortified.h:31:1: note: expected 'void * restrict' but argument is of type 'const char *'
__NTH (memcpy (void *__restrict __dest, const void *__restrict __src,
^~~~~
In file included from /usr/lib64/ocaml/caml/custom.h:23,
from fdkaac_stubs.c:25:
fdkaac_stubs.c: In function 'ocaml_fdkaac_flush':
/usr/lib64/ocaml/caml/mlvalues.h:265:24: warning: passing argument 1 of 'memcpy' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
#define String_val(x) ((const char *) Bp_val(x))
~^~~~~~~~~~~~~~~~~~~~~~~~~
fdkaac_stubs.c:272:10: note: in expansion of macro 'String_val'
memcpy(String_val(ret), outbuf, outArgs.numOutBytes);
^~~~~~~~~~
In file included from /usr/include/features.h:428,
from /usr/include/bits/libc-header-start.h:33,
from /usr/include/stdint.h:26,
from /usr/lib/gcc/x86_64-redhat-linux/8/include/stdint.h:9,
from /usr/lib64/ocaml/caml/config.h:61,
from /usr/lib64/ocaml/caml/mlvalues.h:22,
from /usr/lib64/ocaml/caml/custom.h:23,
from fdkaac_stubs.c:25:
/usr/include/bits/string_fortified.h:31:1: note: expected 'void * restrict' but argument is of type 'const char *'
__NTH (memcpy (void *__restrict __dest, const void *__restrict __src,
^~~~~
Done: 69/72 (jobs: 1)+ exit 0
Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.cwo7Mq
+ umask 022
+ cd /root/rpmbuild/BUILD
+ '[' /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64 '!=' / ']'
+ rm -rf /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64
++ dirname /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64
+ mkdir -p /root/rpmbuild/BUILDROOT
+ mkdir /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64
+ cd ocaml-fdkaac-0.3.2
++ ocamlfind printconf destdir
+ dune install --prefix /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64 --libdir /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml/fdkaac/META
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml/fdkaac/dune-package
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml/fdkaac/fdkaac.a
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml/fdkaac/fdkaac.cma
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml/fdkaac/fdkaac.cmi
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml/fdkaac/fdkaac.cmt
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml/fdkaac/fdkaac.cmti
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml/fdkaac/fdkaac.cmx
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml/fdkaac/fdkaac.cmxa
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml/fdkaac/fdkaac.cmxs
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml/fdkaac/fdkaac.ml
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml/fdkaac/fdkaac.mli
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml/fdkaac/libfdkaac_stubs.a
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml/fdkaac/opam
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/doc/fdkaac/CHANGES
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/doc/fdkaac/README.md
Installing /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml/stublibs/dllfdkaac_stubs.so
+ rm -rf /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/doc
+ /usr/lib/rpm/find-debuginfo.sh -j2 --strict-build-id -m -i --build-id-seed 0.3.2-0.1.el8 --unique-debug-suffix -0.3.2-0.1.el8.x86_64 --unique-debug-src-base ocaml-fdkaac-0.3.2-0.1.el8.x86_64 --run-dwz --dwz-low-mem-die-limit 10000000 --dwz-max-die-limit 110000000 -S debugsourcefiles.list /root/rpmbuild/BUILD/ocaml-fdkaac-0.3.2
extracting debug info from /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/lib64/ocaml/stublibs/dllfdkaac_stubs.so
/usr/lib/rpm/sepdebugcrcfix: Updated 1 CRC32s, 0 CRC32s did match.
15 blocks
+ '[' '%{buildarch}' = noarch ']'
+ QA_CHECK_RPATHS=1
+ case "${QA_CHECK_RPATHS:-}" in
+ /usr/lib/rpm/check-rpaths
+ /usr/lib/rpm/check-buildroot
+ /usr/lib/rpm/redhat/brp-ldconfig
/sbin/ldconfig: Warning: ignoring configuration file that cannot be opened: /etc/ld.so.conf: No such file or directory
+ /usr/lib/rpm/brp-compress
+ /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip
+ /usr/lib/rpm/brp-python-bytecompile '' 1
+ /usr/lib/rpm/brp-python-hardlink
+ PYTHON3=/usr/libexec/platform-python
+ /usr/lib/rpm/redhat/brp-mangle-shebangs
Processing files: ocaml-fdkaac-0.3.2-0.1.el8.x86_64
Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.teNJ2Y
+ umask 022
+ cd /root/rpmbuild/BUILD
+ cd ocaml-fdkaac-0.3.2
+ DOCDIR=/root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/share/doc/ocaml-fdkaac
+ export LC_ALL=C
+ LC_ALL=C
+ export DOCDIR
+ /usr/bin/mkdir -p /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/share/doc/ocaml-fdkaac
+ cp -pr README.md /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/share/doc/ocaml-fdkaac
+ cp -pr CHANGES /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/share/doc/ocaml-fdkaac
+ exit 0
Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.2kRowx
+ umask 022
+ cd /root/rpmbuild/BUILD
+ cd ocaml-fdkaac-0.3.2
+ LICENSEDIR=/root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/share/licenses/ocaml-fdkaac
+ export LC_ALL=C
+ LC_ALL=C
+ export LICENSEDIR
+ /usr/bin/mkdir -p /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/share/licenses/ocaml-fdkaac
+ cp -pr COPYING /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64/usr/share/licenses/ocaml-fdkaac
+ exit 0
Provides: ocaml(Fdkaac) = 872fac0de691c8c51a5e63054de1eb78 ocaml(Fdkaac_dynlink) ocaml-fdkaac = 0.3.2-0.1.el8 ocaml-fdkaac(x86-64) = 0.3.2-0.1.el8
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires: libc.so.6()(64bit) libc.so.6(GLIBC_2.14)(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.4)(64bit) libfdk-aac.so.2()(64bit) ocaml(CamlinternalFormatBasics) = 3a3ca1838627f7762f49679ce0278ad1 ocaml(Stdlib) = c21c5d26416461b543321872a551ea0d ocaml(Stdlib__buffer) = 234b61fa3906003822205287eb65a481 ocaml(Stdlib__callback) = 1b88fbd71c9cf564eb0790c5709a779a ocaml(Stdlib__char) = cdee48235b2dbc08f40a0e2ec3824bc5 ocaml(Stdlib__printexc) = 6e03ab07ea296513ab6af44b09129348 ocaml(Stdlib__seq) = d6a8de25c9eecf5ae9420a9f3f8b2e88 ocaml(Stdlib__string) = 9d02da014acaf1dfdd63872e707eaed9 ocaml(Stdlib__uchar) = ab6f1df93abf9e800a3e0d1543523c96 ocaml(runtime) = 4.11.1 rtld(GNU_HASH)
Processing files: ocaml-fdkaac-devel-0.3.2-0.1.el8.x86_64
Provides: ocaml(Fdkaac) = 872fac0de691c8c51a5e63054de1eb78 ocaml-fdkaac-devel = 0.3.2-0.1.el8 ocaml-fdkaac-devel(x86-64) = 0.3.2-0.1.el8
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires: ocaml(CamlinternalFormatBasics) = 3a3ca1838627f7762f49679ce0278ad1 ocaml(Stdlib) = c21c5d26416461b543321872a551ea0d ocaml(Stdlib__buffer) = 234b61fa3906003822205287eb65a481 ocaml(Stdlib__callback) = 1b88fbd71c9cf564eb0790c5709a779a ocaml(Stdlib__char) = cdee48235b2dbc08f40a0e2ec3824bc5 ocaml(Stdlib__printexc) = 6e03ab07ea296513ab6af44b09129348 ocaml(Stdlib__seq) = d6a8de25c9eecf5ae9420a9f3f8b2e88 ocaml(Stdlib__string) = 9d02da014acaf1dfdd63872e707eaed9 ocaml(Stdlib__uchar) = ab6f1df93abf9e800a3e0d1543523c96 ocaml(runtime) = 4.11.1
Processing files: ocaml-fdkaac-debugsource-0.3.2-0.1.el8.x86_64
Provides: ocaml-fdkaac-debugsource = 0.3.2-0.1.el8 ocaml-fdkaac-debugsource(x86-64) = 0.3.2-0.1.el8
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Processing files: ocaml-fdkaac-debuginfo-0.3.2-0.1.el8.x86_64
Provides: debuginfo(build-id) = 7702767bd6bf01fdcdac344b20c0de7cbe174167 ocaml-fdkaac-debuginfo = 0.3.2-0.1.el8 ocaml-fdkaac-debuginfo(x86-64) = 0.3.2-0.1.el8
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Recommends: ocaml-fdkaac-debugsource(x86-64) = 0.3.2-0.1.el8
Checking for unpackaged file(s): /usr/lib/rpm/check-files /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64
Wrote: /root/rpmbuild/SRPMS/ocaml-fdkaac-0.3.2-0.1.el8.src.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ocaml-fdkaac-0.3.2-0.1.el8.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ocaml-fdkaac-devel-0.3.2-0.1.el8.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ocaml-fdkaac-debugsource-0.3.2-0.1.el8.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ocaml-fdkaac-debuginfo-0.3.2-0.1.el8.x86_64.rpm
Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.Z1YUt9
+ umask 022
+ cd /root/rpmbuild/BUILD
+ cd ocaml-fdkaac-0.3.2
+ /usr/bin/rm -rf /root/rpmbuild/BUILDROOT/ocaml-fdkaac-0.3.2-0.1.el8.x86_64
+ exit 0
[root@dd916d343ef4 git]# exit
After this the binaries are in ./RPMS
.
from centos-rpm-liquidsoap.
Thank you very much for your transparency and these helpful instructions.
I tried to build the RPM's on my Build Server, with partial success. The RPM Build worked so far :
rw-r--r-- 1 root root 83744 Dec 6 11:21 ocaml-fdkaac-0.3.2-0.1.el8.x86_64.rpm
-rw-r--r-- 1 root root 50524 Dec 6 11:21 ocaml-fdkaac-devel-0.3.2-0.1.el8.x86_64.rpm
-rw-r--r-- 1 root root 9608 Dec 6 11:21 ocaml-fdkaac-debugsource-0.3.2-0.1.el8.x86_64.rpm
drwxr-xr-x 2 root root 214 Dec 6 11:21 .
-rw-r--r-- 1 root root 19184 Dec 6 11:21 ocaml-fdkaac-debuginfo-0.3.2-0.1.el8.x86_64.rpm
After installing the rpm's I tested the loading of the dynamic fdkaac encoder w/o success so far. I received the following message :
[liquidsoap@centos8 fdkaac]$ liquidsoap -v 'out(sine())'
2020/12/06 11:41:21 >>> LOG START
2020/12/06 11:41:21 [main:3] Liquidsoap 1.4.3
2020/12/06 11:41:21 [main:3] Using: bytes=[distributed with OCaml 4.02 or above] pcre=7.2.3 sedlex=2.1 menhirLib=20200624 dtools=0.4.2 duppy=0.9.0 cry=0.6.5 mm=0.5.0 xmlplaylist=0.1.4 ogg=0.5.2 vorbis=0.7.1 opus=0.1.3 speex=0.2.1 mad=0.4.5 flac=0.1.7 flac.ogg=0.1.7 dynlink=[distributed with Ocaml] lame=0.3.4 theora=0.3.1 bjack=0.1.5 alsa=0.2.3 samplerate=0.1.4 taglib=0.3.6 ssl=0.5.9 magic=0.7.3 camomile=[unspecified] inotify=2.3 yojson=1.7.0 soundtouch=0.1.8 ladspa=0.1.5
2020/12/06 11:41:21 [dynamic.loader:3] Error while loading dynamic fdkaac encoder at /usr/lib64/ocaml/fdkaac
2020/12/06 11:41:21 [dynamic.loader:3] error loading shared library: Dynlink.Error (Dynlink.Not_a_bytecode_file "/usr/lib64/ocaml/fdkaac/fdkaac_loader.cmxs")
2020/12/06 11:41:21 [dynamic.loader:3] Could not find dynamic module for fdkaac encoder.
I checked everything in /usr/lib64/ocaml/fdkaac and it looked good.
Maybe I might missed something while building & installing the code. Do you have any ideas ?
Beside that, it just came to my mind that by using %ffmpeg
someone could get rid of this procedure. just as a last resort, worth to test and compare if we could achieve the same stream quality. As of the LS documentation the configuration would looks like this:
%ffmpeg(format="mpegts",
%audio(codec="libfdk_aac",samplerate=22050,b="32k",
afterburner=1,profile="aac_he_v2"))
from centos-rpm-liquidsoap.
I can reproduce that it's not working but I'm not sure why :(
dune is building a .cma
and there is a properly linked .cmxs
.
# ldd /usr/lib64/ocaml/fdkaac/fdkaac.cmxs
linux-vdso.so.1 (0x00007ffda23b4000)
libfdk-aac.so.2 => /usr/lib64/fdk-aac/libfdk-aac.so.2 (0x00007f6d61372000)
libc.so.6 => /lib64/libc.so.6 (0x00007f6d60fb0000)
libm.so.6 => /lib64/libm.so.6 (0x00007f6d60c2e000)
/lib64/ld-linux-x86-64.so.2 (0x00007f6d618c1000)
Liquidsoap is clearly trying to load something, but I'm not sure why it won't find the library. So far debugging with strace
and ldd
has not yielded any meaningful results.
The %ffmpeg
approach won't work right now because it isn't enabled in the build.
I've been working on bootrapping ffmpeg on OBS in preparation for inline ffmepg support for a while and finally got working packages built this weekend. It looks like %ffmpeg
support might be possible soonish.
from centos-rpm-liquidsoap.
The latest package now supports ffmpeg (and depends on rpmfusion's ffmepg packages), so you might wat to give the ffmepg approach a real try.
from centos-rpm-liquidsoap.
Related Issues (20)
- Liquidsoap 1.3.3 HOT 1
- Retiring AAC Support HOT 6
- jackd and icecast HOT 2
- Speech Synthesis, festival package not compiled with liquidsoap? HOT 2
- Liquidsoap 1.3.4 HOT 3
- Unable to update to 1.3.7 HOT 2
- variable mksafe not previously defined HOT 3
- Liquidsoap hanging on shutdown HOT 9
- Liquidsoap 1.4.0 HOT 5
- Unable to decode stream of type "audio/aac"! HOT 1
- Several versions in OBS HOT 2
- rpm for fedora HOT 4
- HOWTO: Fedora Server 33? HOT 1
- Remove inotify compile-time dependency
- Unable to run liquidsoap as root HOT 11
- rpmlint: Get rid of hardcoded-library-paths and fix minor warnings. HOT 1
- [email protected] - ExecStartPre=/bin/mkdir - (code=exited, status=1/FAILURE) HOT 2
- Problem: dirac/schroedinger abandoned upstream
- Update liquidsoap repo to latest production version? HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from centos-rpm-liquidsoap.