Re: [mpg123-devel] [mpg123-users] mpg123 1.26rc2 released
Brought to you by:
sobukus
From: Thomas O. <tho...@or...> - 2020-05-09 13:23:39
|
Am Sat, 9 May 2020 14:33:50 +0200 schrieb Martin Guy <mar...@gm...>: > mpg123: error while loading shared libraries: libmpg123.so.0: cannot > open shared object file: No such file or directory Ah! Now I get it. The installation runs `ldconfig -n /usr/local/lib` to set up the symlinks, but this explicitly does not touch the global linker cache. When you install to some non-standard location (like /dev/shm/test), the build uses RPATH/RUNPATH in the binary to locate its libraries. For a system directory, this is omitted, as the build expects you to handle that via the default paths and the ld cache. Checking `readelf -d /usr/local/bin/mpg123|grep PATH`, I see the same on my system and yes, calling mpg123 fails, too, until ldconfig is run. I think this is something normal and not special to the mpg123 build. I never install mpg123 into /usr/local myself, so I was surprised by your report. > Compiling with clang burps a few warnings - maybe you could check that > they are OK really (this, compiling on a 32-bit system. On a 64-bit > one there are no warnings.) Ah, I'll try to take care of those. > src/libsyn123/resample.c:1987:62: warning: result of comparison of > constant 9223372036854775807 with expression of type 'size_t' (aka > 'unsigned int') is always false > [-Wtautological-constant-out-of-range-compare] > if(ins > syn123_resample_maxincount(inrate, outrate) || ins > INT64_MAX) > ~~~ ^ ~~~~~~~~~ Yeah, that is the point;-) I use the power of C99 to get int64_t and just want to ensure that things always fit, not dealing with 32 or 64 bit platform differences. And now the compiler complains about me playing safe;-) I'll try to wrap this into something along sizeof(size_t) >= sizeof(int64_t) at compile time. > if(ins > UINT64_MAX) // Really? > ~~~ ^ ~~~~~~~~~~ Yeah, really … I'm putting checks vor _very_ unlikely errors in there;-) Let's see how I disarm those without making things uglier. > src/out123.c:864:6: warning: format specifies type 'unsigned long' but OK, these are easy. I fixed them in trunk. Alrighty then, Thomas |