One of the libraries used by ffmpeg uses following symbols which is missing 
on OSv:

root@9c76f35feabb:/git-repos/osv# readelf -s 
apps/ffmpeg/ROOTFS/usr/lib/libx265.so.160 | grep finite 
     4: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND 
__pow_finite@GLIBC_2.15 (5)
    22: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND 
__log10_finite@GLIBC_2.15 (5)
    37: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND 
__log_finite@GLIBC_2.15 (5)
    40: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND 
__exp_finite@GLIBC_2.15 (5)
    49: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND 
__log2_finite@GLIBC_2.15 (5)

Based on my research these seems to be aliases in glibc to pow, log10, etc 
implementations. As I understand we need to add aliases (using weak_alias 
macro) to OSv somehow. Given musl subrepo should not be modified we cannot 
add it like this to musl source file like so:

diff --git a/src/math/pow.c b/src/math/pow.c
index f257814e..08c6fd22 100644
--- a/src/math/pow.c
+++ b/src/math/pow.c
@@ -314,3 +314,4 @@ double pow(double x, double y)
                SET_HIGH_WORD(z, j);
        return s*z;
 }
+weak_alias(pow,__pow_finite);

I tried to create a corresponding pow.c file under libc, declare pow with 
extern and define alias with weak_alias but the compiler complains. Is the 
right way then to copy these files from musl dir to libc dir and add 
week_alias statements there? Or is there a better way?

Waldek

-- 
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to