-
Notifications
You must be signed in to change notification settings - Fork 757
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
libvmaf won't statically build into ffmpeg #788
Comments
Can you try patching vmaf with #768? you can wget |
Hmm, after patched,
No error if not patched. More info
|
Tried your CI configuration of ffmpeg here https://github.com/AOMediaCodec/SVT-AV1/pull/1647/files After adding if no tail of ffbuild/config.log
|
struggle for the last 2 days the same issue, have you solve it yet @Provissy ? I got exact same issue, but even downgrade libvmaf down to 1.5.2, I running into old error again.
|
Use the latest git master brach to build libvmaf, the patch has been merged several days ago. #768 You should append It seems that ffmpeg uses default ld to link libvmaf objects which contains C++ symbols. You can refer to the steps here https://github.com/AOMediaCodec/SVT-AV1/pull/1647/files These steps should success...
|
if that's the case. why the workflow itself successfully build without |
That's because it's linking libvmaf shared, so gcc, the linker ffmpeg uses by default, doesn't need to resolve all symbols |
ahhh, above and this comment shred me some light.
That's why I don't see any error prior to commit c171b64. So, I actually do only need Without
even though libvmaf.h exists and I can successfully build into ffmpeg without error |
To build static ffmpeg with vmaf you need |
ERROR: libvmaf >= 1.5.2 not found using pkg-config Fix: Netflix/vmaf#788
My work arounds for these were to (well I changed it so it was building a .dll) delete the installed .dll.a file so that it would only "have installed" static, and to add |
Description
If build ffmpeg with libvmaf, libvmaf won't be compiled into ffmpeg staticlly. Instead, ffmpeg still needs libvmaf.so.1 as runtime dependency.
How to reproduce
Build ffmpeg statically in a container.
Now get the ffmpeg out from the container, run it, the result is
./ffmpeg: error while loading shared libraries: libvmaf.so.1: cannot open shared object file: No such file or directory
This problem occurs even if runnig ffmpeg inside the build environment, which means inside the container in this case.
Note
Might be related to #753 (comment) #557
The text was updated successfully, but these errors were encountered: