#Finding missing dependencies
1 messages · Page 1 of 1 (latest)
what's av1 lavish?
Do you have STATIC_LINK_JXL enabled or disabled?
can you try
PKG_CONFIG="pkgconf --static" cmake -DSTATIC_LINK_JXL=0 ...
with STATIC_LINK_JXL disabled?
hmm
oh, the ... means use the rest of your normal command
it's an ellipsis rather than literal three dots
where's STATIC_LINK_JXL being actually used?
https://github.com/Clybius/aom-av1-lavish/blob/Endless_Possibility/CMakeLists.txt#L532 hmm, I do see it being used there
oh
Oh
For libjxl, try adding -DJPEGXL_ENABLE_PLUGIN_GDKPIXBUF=OFF
since I assume you don't need the pixbuf plugin
libglib?
add -DJPEGXL_ENABLE_PLUGIN_GIMP210=OFF
you might also want to add -DJPEGXL_ENABLE_PLUGIN_MIME=OFF
those should be the three plugins you don't need
"DJPEGXL_ENABLE_PLUGIN_MIME=OFF"
you missed a -
1 warning generated.
[270/270] Linking CXX executable tools\jxl_from_tree.exe
+ [[ '' == \1 ]]
+ [[ 0 -ne 1 ]]
seems it passed
add -DCMAKE_INSTALL_PREFIX="$MINGW_PREFIX" to the cmake line, and as long as libjxl has install() commands setup for their stuff, you should be able to make install or ninja install from the build directory that has the Makefile or build.ninja file
end is fine
as is
MINGW_PREFIX is a predefined variable
if you do echo $MINGW_PREFIX it should say /clang64 for you
not sure what you mean
in the msys2 window
since it won't be defined outside of that unless you run bash -l with source shell <environment>
idk what else, although I would not recommend MSYS Makefiles for the generator since that was originally designed for Msys, not MSYS2
I would recommend Ninja or Unix Makefiles
Ninja preferred though
try adding -DJXL_EXPORT= to the CFLAGS
wasn't really needed
-DJXL_EXPORT=
https://github.com/libjxl/libjxl/blob/f484ee2f0201d256eedc7be634bf8048115477cb/lib/jxl.cmake#L513
# JXL_EXPORT is defined to "__declspec(dllimport)" automatically by CMake
# in Windows builds when including headers from the C API and compiling from
# outside the jxl library. This is required when using the shared library,
# however in windows this causes the function to not be found when linking
# against the static library. This define JXL_EXPORT= here forces it to not
# use dllimport in tests and other tools that require the static library.
yeah, but also add it to the CXXFLAGS as well
yeah
googling and looking at stackoverflow and github issues and trial and error
give it some time, lto'd stuff can take a long time to link
You're welcome
I can help if you provide specific questions, but I cannot hold your hand through the process
since you installed it to /clang64, theoretically, pkgconf should already have it in it's path
so for ffmpeg, you could try ./configure --enable-libaom --pkg-config=pkgconf --pkg-config-flags="--static" ... and see how far it gets
replacing ... with whatever other flags you want to add to ffmpeg's configure line
huh
you lost me
I though aom av1 lavish only provides aomenc and aom libraries linked to libjxl?
-static inside LDFLAGS would generally help, same with -static-libgcc -static-libstdc++
some, not a pro though
ehh, personally, not really, it's quite a pain
probably need to ask the upstream project(s)
can't find any good ones
still throws a bunch of errors and fails
cmake .. -DBUILD_SHARED_LIBS=0 -DCMAKE_BUILD_TYPE=Release -G "MSYS Makefiles" -DSTATIC_LINK_JXL=0 -DCMAKE_CXX_FLAGS="-flto -O3 -march=native -DJXL_EXPORT=" -DCMAKE_C_FLAGS="-flto -O3 -march=native -DJXL_EXPORT=" -DCMAKE_C_FLAGS_INIT="-flto=16 -static" -DCMAKE_EXE_LINKER_FLAGS="-flto -static" -DENABLE_DOCS=0 -DENABLE_TESTS=0 -DCONFIG_AV1_DECODER=0 -DCONFIG_TUNE_BUTTERAUGLI=1 -DCONFIG_TUNE_VMAF=1
only building with shared libs seems to work for me. atleast it actually compiles. but when I try using butteraugli it crashes