m-ab-s / media-autobuild_suite

This Windows Batchscript helps setup a Mingw-w64 compiler environment for building ffmpeg and other media tools under Windows.
GNU General Public License v3.0
1.53k stars 263 forks source link

64-bit Error running make when updating libwebp – [Makefile:433: get_disto.exe] Error 1 & [Makefile:420: all-recursive] Error 1 #1896

Closed ycwan closed 3 years ago

ycwan commented 3 years ago
20:48:47   Running git update for libwebp...
20:48:53 ┌ libwebp git  ................................. [Updates found]
20:48:53 ├ Running autoreconf...
20:49:25 ├ Running uninstall...
20:49:25 ├ Running configure...
20:50:46 ├ Running make...
Likely error (tail of the failed operation logfile):
C:/MinGW64/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/MinGW64/msys64/mingw64/lib/libtiff.a(tif_zip.o):(.text+0x2ed): undefined reference to `libdeflate_zlib_compress_bound'
C:/MinGW64/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/MinGW64/msys64/mingw64/lib/libtiff.a(tif_zip.o):(.text+0x32c): undefined reference to `libdeflate_zlib_compress'
C:/MinGW64/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/MinGW64/msys64/mingw64/lib/libtiff.a(tif_zip.o):(.text+0x412): undefined reference to `libdeflate_alloc_compressor'
C:/MinGW64/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/MinGW64/msys64/mingw64/lib/libtiff.a(tif_zip.o):(.text+0x864): undefined reference to `libdeflate_zlib_decompress'
C:/MinGW64/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/MinGW64/msys64/mingw64/lib/libtiff.a(tif_zip.o):(.text+0x99f): undefined reference to `libdeflate_alloc_decompressor'
C:/MinGW64/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/MinGW64/msys64/mingw64/lib/libtiff.a(tif_zip.o):(.text+0xbf3): undefined reference to `libdeflate_free_compressor'
collect2.exe: error: ld returned 1 exit status
make[1]: *** [Makefile:433: get_disto.exe] Error 1
make[1]: Leaving directory '/build/libwebp-git/build-64bit/extras'
make: *** [Makefile:420: all-recursive] Error 1
make failed. Check C:/MinGW64/build/libwebp-git/build-64bit/ab-suite.make.log
This is required for other packages, so this script will exit.
20:51:57   Creating diagnostics file...

All relevant logs have been anonymously uploaded to https://0x0.st/-rYB.zip
Copy and paste [logs.zip](https://0x0.st/-rYB.zip) in the GitHub issue.
Make sure the suite is up-to-date before reporting an issue. It might've been fixed already.
Try running the build again at a later time.

logs.zip ab-suite.make.log

VulkanAuto commented 3 years ago

Experiencing the same issue as @ycwan. Compilation fails at libwep git. I also deleted the libwebp folder in the hopes that it will fix the issue but it unfortunately does not. As always thank you for the help.

logs.zip

doehrm commented 3 years ago

I could solve the build issue by executing

$ pacman -R mingw-w64-x86_64-libtiff mingw-w64-x86_64-lcms2 mingw-w64-x86_64-libwebp mingw-w64-x86_64-openjpeg2

in a mingw shell. I suppose the latest mingw updates installed a libtiff that didn't export those functions but since we're building it anyway there's no need to use the "system libtiff".

BeyondVertical commented 3 years ago

pacman -R mingw-w64-x86_64-libtiff mingw-w64-x86_64-lcms2 mingw-w64-x86_64-libwebp mingw-w64-x86_64-openjpeg2

Worked for me too, thanks for the workaround!

BeyondVertical commented 3 years ago

Well, happy to early:

10:06:07   Running git clone for tesseract...
10:06:20 ┌ tesseract git  ............................ [Recently updated]
10:06:24 ├ Running autogen...
10:07:10 ├ Running configure...
10:08:50 ├ Running make...
Likely error (tail of the failed operation logfile):
C:/Development/MABS_All/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/Development/MABS_All/local64/lib/../lib/libtiff.a(tif_zip.c.obj):tif_zip.c:(.text+0x394): undefined reference to `libdeflate_alloc_compressor'
C:/Development/MABS_All/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/Development/MABS_All/local64/lib/../lib/libtiff.a(tif_zip.c.obj):tif_zip.c:(.text+0x78d): undefined reference to `libdeflate_zlib_decompress'
C:/Development/MABS_All/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/Development/MABS_All/local64/lib/../lib/libtiff.a(tif_zip.c.obj):tif_zip.c:(.text+0x8a7): undefined reference to `libdeflate_alloc_decompressor'
C:/Development/MABS_All/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/Development/MABS_All/local64/lib/../lib/libtiff.a(tif_zip.c.obj):tif_zip.c:(.text+0xa93): undefined reference to `libdeflate_free_compressor'
collect2.exe: error: ld returned 1 exit status
make[2]: *** [Makefile:3033: tesseract.exe] Error 1
make[2]: Leaving directory '/build/tesseract-git/build-64bit'
make[1]: *** [Makefile:5577: all-recursive] Error 1
make[1]: Leaving directory '/build/tesseract-git/build-64bit'
make: *** [Makefile:2038: all] Error 2
make failed. Check C:/Development/MABS_All/build/tesseract-git/build-64bit/ab-suite.make.log
This is required for other packages, so this script will exit.
10:10:13   Creating diagnostics file...

All relevant logs have been anonymously uploaded to https://0x0.st/-s1x.zip
Copy and paste [logs.zip](https://0x0.st/-s1x.zip) in the GitHub issue.
Make sure the suite is up-to-date before reporting an issue. It might've been fixed already.
Try running the build again at a later time.
VulkanAuto commented 3 years ago

Well, happy to early:

10:06:07   Running git clone for tesseract...
10:06:20 ┌ tesseract git  ............................ [Recently updated]
10:06:24 ├ Running autogen...
10:07:10 ├ Running configure...
10:08:50 ├ Running make...
Likely error (tail of the failed operation logfile):
C:/Development/MABS_All/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/Development/MABS_All/local64/lib/../lib/libtiff.a(tif_zip.c.obj):tif_zip.c:(.text+0x394): undefined reference to `libdeflate_alloc_compressor'
C:/Development/MABS_All/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/Development/MABS_All/local64/lib/../lib/libtiff.a(tif_zip.c.obj):tif_zip.c:(.text+0x78d): undefined reference to `libdeflate_zlib_decompress'
C:/Development/MABS_All/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/Development/MABS_All/local64/lib/../lib/libtiff.a(tif_zip.c.obj):tif_zip.c:(.text+0x8a7): undefined reference to `libdeflate_alloc_decompressor'
C:/Development/MABS_All/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:/Development/MABS_All/local64/lib/../lib/libtiff.a(tif_zip.c.obj):tif_zip.c:(.text+0xa93): undefined reference to `libdeflate_free_compressor'
collect2.exe: error: ld returned 1 exit status
make[2]: *** [Makefile:3033: tesseract.exe] Error 1
make[2]: Leaving directory '/build/tesseract-git/build-64bit'
make[1]: *** [Makefile:5577: all-recursive] Error 1
make[1]: Leaving directory '/build/tesseract-git/build-64bit'
make: *** [Makefile:2038: all] Error 2
make failed. Check C:/Development/MABS_All/build/tesseract-git/build-64bit/ab-suite.make.log
This is required for other packages, so this script will exit.
10:10:13   Creating diagnostics file...

All relevant logs have been anonymously uploaded to https://0x0.st/-s1x.zip
Copy and paste [logs.zip](https://0x0.st/-s1x.zip) in the GitHub issue.
Make sure the suite is up-to-date before reporting an issue. It might've been fixed already.
Try running the build again at a later time.

Is the above error related to the command that you used from your previous post? It now seems to be related to tesseract git instead of libwebp git. Maybe the workaround was only for libwebp but did not solve the issue and that is why it repeats itself now with tesseract git?

(I am just waiting for an update on the mabs script to fix the issue or if I see an update on libwebp git and I can try to run mabs again and hopefully it works)

1480c1 commented 3 years ago

It seems somewhere along the way, libtiff is not properly saying that it depends on libdeflate, will probably need to be reported upstream

BeyondVertical commented 3 years ago

Is the above error related to the command that you used from your previous post? It now seems to be related to tesseract git instead of libwebp git. Maybe the workaround was only for libwebp but did not solve the issue and that is why it repeats itself now with tesseract git?

Yes, exactly that. The workaround only works for libwebp, but tesseract is broken at the moment.

VulkanAuto commented 3 years ago

@1480c1 I downloaded the updated version of mabs after you updated it and the libwebp works fine. I no longer get the libdeflate error. However, I am receiving another error related to: tesseract not found using pkg-config.

07:45:10(B ┌ ffmpeg git (B .................................. [Updates found(B]
07:45:10(B ├(B Changing options to comply to nonfree...
FFmpeg and related apps will depend on CUDA SDK to run!(B
07:45:17(B ├(B Compiling static(B FFmpeg...
07:45:19(B ├(B Running uninstall...
07:45:19(B ├(B Running configure...
Likely error (tail of the failed operation logfile):
CXXFLAGS: -mthreads -mtune=generic -O2 -pipe
LDFLAGS: -pipe -static-libgcc -static-libstdc++ -L/local64/lib -L/mingw64/lib
../configure --prefix=/local64 --bindir=/local64/bin-video --pkg-config=pkgconf --pkg-config-flags=--static --cc=ccache gcc --cxx=ccache g++ --disable-autodetect --enable-amf --enable-bzlib --enable-cuda --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-iconv --enable-lzma --enable-nvenc --enable-zlib --enable-sdl2 --enable-ffnvcodec --enable-nvdec --enable-cuda-llvm --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libdav1d --enable-libaom --disable-debug --enable-libfdk-aac --enable-fontconfig --enable-libass --enable-libbluray --enable-libfreetype --enable-libmfx --enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libwebp --enable-libxml2 --enable-libzimg --enable-libshine --enable-gpl --enable-avisynth --enable-libxvid --enable-libopenmpt --enable-version3 --enable-librav1e --enable-libsrt --enable-libgsm --enable-libvmaf --enable-libsvtav1 --enable-chromaprint --enable-decklink --enable-frei0r --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfribidi --enable-libgme --enable-libilbc --enable-libsvthevc --enable-libsvtvp9 --enable-libkvazaar --enable-libmodplug --enable-librtmp --enable-librubberband --enable-libtesseract --enable-libxavs --enable-libzmq --enable-libzvbi --enable-openal --enable-libcodec2 --enable-ladspa --enable-libglslang --enable-vulkan --enable-libdavs2 --enable-libxavs2 --enable-libuavs3d --enable-opencl --enable-opengl --enable-libnpp --disable-libopenh264 --enable-openssl --extra-cflags=-fopenmp --extra-libs=-lgomp --extra-cflags=-DLIBTWOLAME_STATIC --extra-libs=-lstdc++ --extra-cflags=-DCACA_STATIC --extra-cflags=-DMODPLUG_STATIC --extra-cflags=-DCHROMAPRINT_NODLL --extra-libs=-lstdc++ --extra-cflags=-DZMQ_STATIC --extra-libs=-lpsapi --extra-cflags=-DLIBXML_STATIC --extra-libs=-liconv --disable-w32threads --extra-cflags=-DKVZ_STATIC_LIB --enable-nonfree --extra-cflags=-IC:/PROGRA~1/NVIDIA~2/CUDA/v11.2/include --extra-ldflags=-LC:/PROGRA~1/NVIDIA~2/CUDA/v11.2/lib/x64 --extra-cflags=-DAL_LIBTYPE_STATIC --extra-cflags=-ID:/1m-ab-s/local64/include/AL --extra-version=g66deab3a26+4
ERROR: tesseract not found using pkg-config

If you think configure made a mistake, make sure you are using the latest
version from Git.  If the latest version fails, report the problem to the
ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "ffbuild/config.log" produced by configure as this will help
solve the problem.
configure failed. Check D:/1m-ab-s/build/ffmpeg-git/build-static-64bit/ab-suite.configure.log(B
This is required for other packages, so this script will exit.(B
07:48:31(B   Creating diagnostics file...

All relevant logs have been anonymously uploaded to https://0x0.st/-s4O.zip
Copy and paste [logs.zip](https://0x0.st/-s4O.zip) in the GitHub issue.(B
Make sure the suite is up-to-date before reporting an issue. It might've been fixed already.
[?2004h[?2004l
[?2004h[?2004l
Try running the build again at a later time.

Sorry for the symbols as I wasn't able to copy the log from the terminal and copied from the compile log instead.

logs.zip

@BlackScreen It might be because as you stated that tesseract is broken. (I honestly do not though, but hopefully the logs help in some way)

1480c1 commented 3 years ago

https://github.com/m-ab-s/media-autobuild_suite/commit/95da447d5faa5a08cf43e09a9654cbc2142c455e

EraYaN commented 3 years ago

Even on the latest commit, I had to install libdeflate manually for the configure of libwebp to complete.

1480c1 commented 3 years ago

I will test a clean build again after my current runs are complete

EraYaN commented 3 years ago

It was a very simple configure script error where ld exits after not finding -ldeflate on the first 'C compiler can create executables test'. (So it failed earlier than the OP)

VulkanAuto commented 3 years ago

Sorry if I keep on bringing up issues. 😔 I downloaded the most recent version of mabs and ran the configuration. However, there was a recent update with zimg git and it caused an error. From what I can tell it is because of the addition of : x = std::max(x, FLT_MIN);

This update for zimg was just updated 2 hours ago (1 hour after you updated the mabs for tesserac) so I believe that is what is causing the error.

12:32:51(B ┌ zimg git (B .................................... [Updates found(B]
12:32:52(B ├(B Running uninstall...
12:32:53(B ├(B Running autoreconf...
12:33:27(B ├(B Running configure...
12:34:42(B ├(B Running make...
Likely error (tail of the failed operation logfile):
../src/zimg/colorspace/x86/gamma_constants_avx512.cpp:264:18: error: 'FLT_MIN' was not declared in this scope
  264 |  x = std::max(x, FLT_MIN);
      |                  ^~~~~~~
../src/zimg/colorspace/x86/gamma_constants_avx512.cpp:6:1: note: 'FLT_MIN' is defined in header '<cfloat>'; did you forg
    5 | #include "gamma_constants_avx512.h"
  +++ |+#include <cfloat>
    6 |
make[1]: *** [Makefile:2812: src/zimg/colorspace/x86/libavx512_la-gamma_constants_avx512.lo] Error 1
make[1]: Leaving directory '/build/zimg-git/build-64bit'
make: *** [Makefile:4141: all-recursive] Error 1
make failed. Check D:/1m-ab-s/build/zimg-git/build-64bit/ab-suite.make.log
This is required for other packages, so this script will exit.
12:35:51   Creating diagnostics file...

All relevant logs have been anonymously uploaded to https://0x0.st/-syg.zip
Copy and paste [logs.zip](https://0x0.st/-syg.zip) in the GitHub issue.
Make sure the suite is up-to-date before reporting an issue. It might've been fixed already.
Try running the build again at a later time.

😔 I can test again to provide more logs if you need them. You're the best. logs.zip

1480c1 commented 3 years ago

It would be better to report that upstream and include the output, since you already identified the commit, you could ping the committer and put the error in the commit's comment like https://github.com/sekrit-twc/zimg/commit/93e7de6605ce6653a45114444487bebaee156f90#commitcomment-45709243

1480c1 commented 3 years ago

Also, since technically zimg is separate from libwebp and tesseract, it would be better to open a separate new issue for it so it's easier to manage each issue as a logically separate unit

1480c1 commented 3 years ago

fixed in https://github.com/sekrit-twc/zimg/commit/64eeb3187880b5caa88fe4aa6af37ac647d3412e

VulkanAuto commented 3 years ago

It would be better to report that upstream and include the output, since you already identified the commit, you could ping the committer and put the error in the commit's comment like sekrit-twc/zimg@93e7de6#commitcomment-45709243

Okay, I understand. I am not familiar with commenting on the issues but I will do my best to report to the committer. I appreciate the guidance.

Should I also include the logs in the commit or maybe they are not required?

VulkanAuto commented 3 years ago

I deleted the tesseract git folder and ran the newly updated script and everything is working great. Compilation was completed successfully.

ycwan commented 3 years ago

I have updated all tools in the suite without any errors like what VulkanAuto have done