-
Notifications
You must be signed in to change notification settings - Fork 9.6k
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
5.0.0: build fails #3679
Comments
I tried it on OpenSUSE linux and there is no problem. Please provide full information - not only error message. |
First I've been thinking that this issue is about removed by LTO symbol but that is not the case because even with disabled LTO I have the still the same error. I'm using Fedora gcc 11.2.1. CFLAGS='-O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections'
CXXFLAGS='-O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections'
LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,--gc-sections -Wl,-z,now'
CC=/usr/bin/gcc
AR=/usr/bin/gcc-ar
NM=/usr/bin/gcc-nm
RANLIB=/usr/bin/gcc-ranlib
export CFLAGS CXXFLAGS FFLAGS FCFLAGS LDFLAGS CC CXX FC AR NM RANLIB
/usr/bin/cmake -B x86_64-redhat-linux-gnu -D BUILD_SHARED_LIBS=ON -D CMAKE_AR=/usr/bin/gcc-ar -D CMAKE_BUILD_TYPE=RelWithDebInfo -D CMAKE_C_FLAGS_RELEASE=-DNDEBUG -D CMAKE_CXX_FLAGS_RELEASE=-DNDEBUG -D CMAKE_Fortran_FLAGS_RELEASE=-DNDEBUG -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_NM=/usr/bin/gcc-nm -D CMAKE_RANLIB=/usr/bin/gcc-ranlib -D CMAKE_VERBOSE_MAKEFILE=ON -D INCLUDE_INSTALL_DIR=/usr/include -D LIB_INSTALL_DIR=/usr/lib64 -D LIB_SUFFIX=64 -D SHARE_INSTALL_PREFIX=/usr/share -D SYSCONF_INSTALL_DIR=/etc -S . -D BUILD_TESTS=ON -D CMAKE_INSTALL_LIBDIR=lib64 -D TESSDATA_PREFIX=/usr/share/tesseract -D USE_SYSTEM_ICU=ON |
Are you Fedora's Tesseract package maintainer? Did you try building with Autotutools? |
No I'm not Fedora's Tesseract package maintainer. |
Seems like problem with any customization of CFLAGS/CXXFLAGS/LDFLAGS... Can you just make clean build (cmake .. && make)? |
Hmm .. what you mean "clean build". [tkloczko@ss-desktop SPECS]$ grep -w %cmake *.spec -l | wc -l
401 Does it mean that you've been able to reporoduce reported effect using scririp which I've provided? |
Nevertheless looks like it is issue with only one lbrary public symbol. I cannot fined anything specyfic in the cose which could make that |
With clean build I mean this:
|
It fails on -- The C compiler identification is GNU 11.2.1
-- The CXX compiler identification is GNU 11.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
fatal: No names found, cannot describe anything.
Configuring tesseract version 5.0.0...
-- Setting build type to 'Release' as none was specified.
-- IPO / LTO supported
-- Performing Test COMPILER_SUPPORTS_MARCH_NATIVE
-- Performing Test COMPILER_SUPPORTS_MARCH_NATIVE - Success
CMAKE_SYSTEM_PROCESSOR=<x86_64>
CMake Warning (dev) in CMakeLists.txt:
A logical block opening on the line
/data/home/tkloczko/rpmbuild/g2v/SPECS/tesseract/CMakeLists.txt:152 (if)
closes on the line
/data/home/tkloczko/rpmbuild/g2v/SPECS/tesseract/CMakeLists.txt:236 (endif)
with mis-matching arguments.
This warning is for project developers. Use -Wno-dev to suppress it.
-- Performing Test HAVE_AVX
-- Performing Test HAVE_AVX - Success
-- Performing Test HAVE_AVX2
-- Performing Test HAVE_AVX2 - Success
-- Performing Test HAVE_FMA
-- Performing Test HAVE_FMA - Success
-- Performing Test HAVE_SSE4_1
-- Performing Test HAVE_SSE4_1 - Success
-- target changed from "" to "auto"
-- Detected CPU: zen
-- Performing Test check_cxx_compiler_flag__march_znver1
-- Performing Test check_cxx_compiler_flag__march_znver1 - Success
-- Performing Test check_cxx_compiler_flag__msse2
-- Performing Test check_cxx_compiler_flag__msse2 - Success
-- Performing Test check_cxx_compiler_flag__msse3
-- Performing Test check_cxx_compiler_flag__msse3 - Success
-- Looking for C++ include pmmintrin.h
-- Looking for C++ include pmmintrin.h - found
-- Performing Test check_cxx_compiler_flag__mssse3
-- Performing Test check_cxx_compiler_flag__mssse3 - Success
-- Looking for C++ include tmmintrin.h
-- Looking for C++ include tmmintrin.h - found
-- Performing Test check_cxx_compiler_flag__msse4_1
-- Performing Test check_cxx_compiler_flag__msse4_1 - Success
-- Looking for C++ include smmintrin.h
-- Looking for C++ include smmintrin.h - found
-- Performing Test check_cxx_compiler_flag__msse4_2
-- Performing Test check_cxx_compiler_flag__msse4_2 - Success
-- Performing Test check_cxx_compiler_flag__msse4a
-- Performing Test check_cxx_compiler_flag__msse4a - Success
-- Looking for C++ include ammintrin.h
-- Looking for C++ include ammintrin.h - found
-- Performing Test check_cxx_compiler_flag__mavx
-- Performing Test check_cxx_compiler_flag__mavx - Success
-- Looking for C++ include immintrin.h
-- Looking for C++ include immintrin.h - found
-- Performing Test check_cxx_compiler_flag__mfma
-- Performing Test check_cxx_compiler_flag__mfma - Success
-- Performing Test check_cxx_compiler_flag__mbmi2
-- Performing Test check_cxx_compiler_flag__mbmi2 - Success
-- Performing Test check_cxx_compiler_flag__mavx2
-- Performing Test check_cxx_compiler_flag__mavx2 - Success
-- Performing Test check_cxx_compiler_flag__mno_xop
-- Performing Test check_cxx_compiler_flag__mno_xop - Success
-- Performing Test check_cxx_compiler_flag__mno_fma4
-- Performing Test check_cxx_compiler_flag__mno_fma4 - Success
-- Performing Test check_cxx_compiler_flag__mno_avx512f
-- Performing Test check_cxx_compiler_flag__mno_avx512f - Success
-- Performing Test check_cxx_compiler_flag__mno_avx512vl
-- Performing Test check_cxx_compiler_flag__mno_avx512vl - Success
-- Performing Test check_cxx_compiler_flag__mno_avx512pf
-- Performing Test check_cxx_compiler_flag__mno_avx512pf - Success
-- Performing Test check_cxx_compiler_flag__mno_avx512er
-- Performing Test check_cxx_compiler_flag__mno_avx512er - Success
-- Performing Test check_cxx_compiler_flag__mno_avx512cd
-- Performing Test check_cxx_compiler_flag__mno_avx512cd - Success
-- Performing Test check_cxx_compiler_flag__mno_avx512dq
-- Performing Test check_cxx_compiler_flag__mno_avx512dq - Success
-- Performing Test check_cxx_compiler_flag__mno_avx512bw
-- Performing Test check_cxx_compiler_flag__mno_avx512bw - Success
-- Performing Test check_cxx_compiler_flag__mno_avx512ifma
-- Performing Test check_cxx_compiler_flag__mno_avx512ifma - Success
-- Performing Test check_cxx_compiler_flag__mno_avx512vbmi
-- Performing Test check_cxx_compiler_flag__mno_avx512vbmi - Success
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.8.0")
-- Could NOT find Leptonica (missing: Leptonica_DIR)
-- Checking for module 'lept>=1.74'
-- Found lept, version 1.82.0
-- Found TIFF: /usr/lib64/libtiff.so (found version "4.3.0")
-- Found LibArchive: /usr/lib64/libarchive.so (found version "3.5.2")
-- Found CURL: /usr/lib64/libcurl.so (found version "7.80.0")
-- Looking for include file dlfcn.h
-- Looking for include file dlfcn.h - found
-- Looking for include file inttypes.h
-- Looking for include file inttypes.h - found
-- Looking for include file memory.h
-- Looking for include file memory.h - found
-- Looking for include file stdint.h
-- Looking for include file stdint.h - found
-- Looking for include file stdlib.h
-- Looking for include file stdlib.h - found
-- Looking for include file string.h
-- Looking for include file string.h - found
-- Looking for include file sys/stat.h
-- Looking for include file sys/stat.h - found
-- Looking for include file sys/types.h
-- Looking for include file sys/types.h - found
-- Looking for include file unistd.h
-- Looking for include file unistd.h - found
-- Looking for include file cairo/cairo-version.h
-- Looking for include file cairo/cairo-version.h - found
-- Looking for include file CL/cl.h
-- Looking for include file CL/cl.h - found
-- Looking for include file OpenCL/cl.h
-- Looking for include file OpenCL/cl.h - not found
-- Looking for include file pango-1.0/pango/pango-features.h
-- Looking for include file pango-1.0/pango/pango-features.h - found
-- Looking for include file unicode/uchar.h
-- Looking for include file unicode/uchar.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of long long int
-- Check size of long long int - done
-- Check size of wchar_t
-- Check size of wchar_t - done
--
-- General configuration for Tesseract 5.0.0
-- --------------------------------------------------------
-- Build type: Release
-- Compiler: GNU
-- Used standard: C++17
-- CXX compiler options: -DNDEBUG
-- Compile definitions = HAVE_AVX;HAVE_AVX2;HAVE_FMA;HAVE_SSE4_1;CMAKE_BUILD;HAVE_CONFIG_H
-- Linker options:
-- Install directory: /usr/local
-- Architecture flags: -march=znver1;-msse2;-msse3;-mssse3;-msse4.1;-msse4.2;-msse4a;-mavx;-mfma;-mbmi2;-mavx2;-mno-xop;-mno-fma4;-mno-avx512f;-mno-avx512vl;-mno-avx512pf;-mno-avx512er;-mno-avx512cd;-mno-avx512dq;-mno-avx512bw;-mno-avx512ifma;-mno-avx512vbmi
-- Vector unit list: sse2;sse3;ssse3;sse4.1;sse4.2;sse4a;avx;fma;bmi2;avx2
-- HAVE_AVX: 1
-- HAVE_AVX2: 1
-- HAVE_FMA: 1
-- HAVE_SSE4_1: 1
-- MARCH_NATIVE_OPT: ON
-- HAVE_NEON: FALSE
-- Link-time optimization: FALSE
-- --------------------------------------------------------
-- Build with sw [SW_BUILD]: OFF
-- Build with openmp support [OPENMP_BUILD]: OFF
-- Build with libarchive support [HAVE_LIBARCHIVE]: ON
-- Build with libcurl support [HAVE_LIBCURL]: ON
-- Enable float for LSTM [FAST_FLOAT]: ON
-- Disable disable graphics (ScrollView) [GRAPHICS_DISABLED]: OFF
-- Disable the legacy OCR engine [DISABLED_LEGACY_ENGINE]: OFF
-- Build training tools [BUILD_TRAINING_TOOLS]: ON
-- Build tests [BUILD_TESTS]: OFF
-- Use system ICU Library [USE_SYSTEM_ICU]: OFF
-- --------------------------------------------------------
--
-- Checking for modules 'icu-uc;icu-i18n'
-- Found icu-uc, version 69.1
-- Found icu-i18n, version 69.1
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY - Success
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY - Success
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR - Success
-- Checking for module 'pango>=1.38.0'
-- Found pango, version 1.50.1
-- Checking for module 'cairo'
-- Found cairo, version 1.17.4
-- Checking for module 'pangoft2'
-- Found pangoft2, version 1.50.1
-- Checking for module 'pangocairo'
-- Found pangocairo, version 1.50.1
-- Checking for module 'fontconfig'
-- Found fontconfig, version 2.13.94
-- Configuring done
-- Generating done
-- Build files have been written to: /data/home/tkloczko/rpmbuild/g2v/SPECS/tesseract/build
Consolidate compiler generated dependencies of target libtesseract
[ 0%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/equationdetect.cpp.o
[ 1%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/control.cpp.o
[ 1%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/fixxht.cpp.o
[ 2%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/fixspace.cpp.o
[ 3%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/ltrresultiterator.cpp.o
[ 3%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/docqual.cpp.o
[ 3%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/osdetect.cpp.o
[ 3%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/mutableiterator.cpp.o
[ 3%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/pageiterator.cpp.o
[ 4%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/pagesegmain.cpp.o
[ 4%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/output.cpp.o
[ 4%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/linerec.cpp.o
[ 5%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/pagewalk.cpp.o
[ 5%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/par_control.cpp.o
[ 5%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/paragraphs.cpp.o
[ 6%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/paramsd.cpp.o
[ 6%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/pgedit.cpp.o
[ 7%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/recogtraining.cpp.o
[ 7%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/reject.cpp.o
[ 7%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/resultiterator.cpp.o
[ 8%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/superscript.cpp.o
[ 8%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/tessbox.cpp.o
[ 8%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/tessedit.cpp.o
[ 9%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/tesseractclass.cpp.o
[ 9%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/tessvars.cpp.o
[ 9%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/tfacepp.cpp.o
[ 10%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/thresholder.cpp.o
[ 10%] Building CXX object CMakeFiles/libtesseract.dir/src/ccmain/werdit.cpp.o
[ 10%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/blamer.cpp.o
[ 11%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/blobbox.cpp.o
[ 11%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/blobs.cpp.o
[ 11%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/blread.cpp.o
[ 12%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/boxread.cpp.o
[ 12%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/boxword.cpp.o
[ 12%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/ccstruct.cpp.o
[ 13%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/coutln.cpp.o
[ 13%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/detlinefit.cpp.o
[ 14%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/dppoint.cpp.o
[ 14%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/fontinfo.cpp.o
[ 14%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/image.cpp.o
[ 15%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/imagedata.cpp.o
[ 15%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/linlsq.cpp.o
[ 15%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/matrix.cpp.o
[ 16%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/mod128.cpp.o
[ 16%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/normalis.cpp.o
[ 16%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/ocrblock.cpp.o
[ 17%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/ocrpara.cpp.o
[ 17%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/ocrrow.cpp.o
[ 17%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/otsuthr.cpp.o
[ 18%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/pageres.cpp.o
[ 18%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/params_training_featdef.cpp.o
[ 18%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/pdblock.cpp.o
[ 19%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/points.cpp.o
[ 19%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/polyaprx.cpp.o
[ 19%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/polyblk.cpp.o
[ 20%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/quadlsq.cpp.o
[ 20%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/quspline.cpp.o
[ 21%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/ratngs.cpp.o
[ 21%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/rect.cpp.o
[ 21%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/rejctmap.cpp.o
[ 22%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/seam.cpp.o
[ 22%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/split.cpp.o
[ 22%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/statistc.cpp.o
[ 23%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/stepblob.cpp.o
[ 23%] Building CXX object CMakeFiles/libtesseract.dir/src/ccstruct/werd.cpp.o
[ 23%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/ambigs.cpp.o
[ 24%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/bitvector.cpp.o
[ 24%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/ccutil.cpp.o
[ 24%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/clst.cpp.o
[ 25%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/elst.cpp.o
[ 25%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/elst2.cpp.o
[ 25%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/errcode.cpp.o
[ 26%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/indexmapbidi.cpp.o
[ 26%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/params.cpp.o
[ 26%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/mainblk.cpp.o
[ 27%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/scanutils.cpp.o
[ 27%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/serialis.cpp.o
[ 28%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/tessdatamanager.cpp.o
[ 28%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/tprintf.cpp.o
[ 28%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/unichar.cpp.o
[ 29%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/unicharcompress.cpp.o
[ 29%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/unicharmap.cpp.o
[ 30%] Building CXX object CMakeFiles/libtesseract.dir/src/ccutil/unicharset.cpp.o
[ 30%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/adaptive.cpp.o
[ 30%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/adaptmatch.cpp.o
[ 30%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/blobclass.cpp.o
[ 31%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/classify.cpp.o
[ 31%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/cluster.cpp.o
[ 31%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/clusttool.cpp.o
[ 32%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/cutoffs.cpp.o
[ 32%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/featdefs.cpp.o
[ 32%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/float2int.cpp.o
[ 33%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/fpoint.cpp.o
[ 33%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/intfeaturespace.cpp.o
[ 33%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/intfx.cpp.o
[ 34%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/intmatcher.cpp.o
[ 34%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/intproto.cpp.o
[ 35%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/kdtree.cpp.o
[ 35%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/mf.cpp.o
[ 35%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/mfoutline.cpp.o
[ 36%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/mfx.cpp.o
[ 36%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/normfeat.cpp.o
[ 36%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/normmatch.cpp.o
[ 37%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/ocrfeatures.cpp.o
[ 37%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/outfeat.cpp.o
[ 37%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/picofeat.cpp.o
[ 38%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/protos.cpp.o
[ 38%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/shapeclassifier.cpp.o
[ 38%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/shapetable.cpp.o
[ 39%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/tessclassifier.cpp.o
[ 39%] Building CXX object CMakeFiles/libtesseract.dir/src/classify/trainingsample.cpp.o
[ 39%] Building CXX object CMakeFiles/libtesseract.dir/src/cutil/oldlist.cpp.o
[ 40%] Building CXX object CMakeFiles/libtesseract.dir/src/dict/context.cpp.o
[ 40%] Building CXX object CMakeFiles/libtesseract.dir/src/dict/dawg.cpp.o
[ 40%] Building CXX object CMakeFiles/libtesseract.dir/src/dict/dawg_cache.cpp.o
[ 41%] Building CXX object CMakeFiles/libtesseract.dir/src/dict/dict.cpp.o
[ 41%] Building CXX object CMakeFiles/libtesseract.dir/src/dict/hyphen.cpp.o
[ 42%] Building CXX object CMakeFiles/libtesseract.dir/src/dict/permdawg.cpp.o
[ 42%] Building CXX object CMakeFiles/libtesseract.dir/src/dict/stopper.cpp.o
[ 42%] Building CXX object CMakeFiles/libtesseract.dir/src/dict/trie.cpp.o
[ 43%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/convolve.cpp.o
[ 43%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/fullyconnected.cpp.o
[ 43%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/functions.cpp.o
[ 44%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/input.cpp.o
[ 44%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/lstm.cpp.o
[ 44%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/lstmrecognizer.cpp.o
[ 45%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/maxpool.cpp.o
[ 45%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/network.cpp.o
[ 45%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/networkio.cpp.o
[ 46%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/parallel.cpp.o
[ 46%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/plumbing.cpp.o
[ 46%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/recodebeam.cpp.o
[ 47%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/reconfig.cpp.o
[ 47%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/reversed.cpp.o
[ 47%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/series.cpp.o
[ 48%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/stridemap.cpp.o
[ 48%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/tfnetwork.cpp.o
[ 48%] Building CXX object CMakeFiles/libtesseract.dir/src/lstm/weightmatrix.cpp.o
[ 49%] Building CXX object CMakeFiles/libtesseract.dir/src/opencl/openclwrapper.cpp.o
[ 49%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/alignedblob.cpp.o
[ 50%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/baselinedetect.cpp.o
[ 50%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/bbgrid.cpp.o
[ 50%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/blkocc.cpp.o
[ 51%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/blobgrid.cpp.o
[ 51%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/ccnontextdetect.cpp.o
[ 51%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/cjkpitch.cpp.o
[ 52%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/colfind.cpp.o
[ 52%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/colpartition.cpp.o
[ 52%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/colpartitiongrid.cpp.o
[ 53%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/colpartitionset.cpp.o
[ 53%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/devanagari_processing.cpp.o
[ 53%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/drawtord.cpp.o
[ 54%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/edgblob.cpp.o
[ 54%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/edgloop.cpp.o
[ 54%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/equationdetectbase.cpp.o
[ 55%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/fpchop.cpp.o
[ 55%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/gap_map.cpp.o
[ 55%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/imagefind.cpp.o
[ 56%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/linefind.cpp.o
[ 56%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/makerow.cpp.o
[ 57%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/oldbasel.cpp.o
[ 57%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/pithsync.cpp.o
[ 57%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/pitsync1.cpp.o
[ 58%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/scanedg.cpp.o
[ 58%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/sortflts.cpp.o
[ 58%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/strokewidth.cpp.o
[ 59%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/tabfind.cpp.o
[ 59%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/tablefind.cpp.o
[ 59%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/tablerecog.cpp.o
[ 60%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/tabvector.cpp.o
[ 60%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/textlineprojection.cpp.o
[ 60%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/textord.cpp.o
[ 61%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/topitch.cpp.o
[ 61%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/tordmain.cpp.o
[ 61%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/tospace.cpp.o
[ 62%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/tovars.cpp.o
[ 62%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/underlin.cpp.o
[ 62%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/wordseg.cpp.o
[ 63%] Building CXX object CMakeFiles/libtesseract.dir/src/textord/workingpartset.cpp.o
[ 63%] Building CXX object CMakeFiles/libtesseract.dir/src/viewer/scrollview.cpp.o
[ 64%] Building CXX object CMakeFiles/libtesseract.dir/src/viewer/svmnode.cpp.o
[ 64%] Building CXX object CMakeFiles/libtesseract.dir/src/viewer/svpaint.cpp.o
[ 64%] Building CXX object CMakeFiles/libtesseract.dir/src/viewer/svutil.cpp.o
[ 65%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/associate.cpp.o
[ 65%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/chop.cpp.o
[ 65%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/chopper.cpp.o
[ 66%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/drawfx.cpp.o
[ 66%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/findseam.cpp.o
[ 66%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/gradechop.cpp.o
[ 67%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/language_model.cpp.o
[ 67%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/lm_consistency.cpp.o
[ 68%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/lm_state.cpp.o
[ 68%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/lm_pain_points.cpp.o
[ 68%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/outlines.cpp.o
[ 68%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/params_model.cpp.o
[ 69%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/pieces.cpp.o
[ 69%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/plotedges.cpp.o
[ 69%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/render.cpp.o
[ 70%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/segsearch.cpp.o
[ 70%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/tface.cpp.o
[ 71%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/wordclass.cpp.o
[ 71%] Building CXX object CMakeFiles/libtesseract.dir/src/wordrec/wordrec.cpp.o
[ 71%] Building CXX object CMakeFiles/libtesseract.dir/src/api/baseapi.cpp.o
[ 72%] Building CXX object CMakeFiles/libtesseract.dir/src/api/capi.cpp.o
[ 72%] Building CXX object CMakeFiles/libtesseract.dir/src/api/renderer.cpp.o
[ 72%] Building CXX object CMakeFiles/libtesseract.dir/src/api/altorenderer.cpp.o
[ 73%] Building CXX object CMakeFiles/libtesseract.dir/src/api/hocrrenderer.cpp.o
[ 73%] Building CXX object CMakeFiles/libtesseract.dir/src/api/lstmboxrenderer.cpp.o
[ 73%] Building CXX object CMakeFiles/libtesseract.dir/src/api/pdfrenderer.cpp.o
[ 74%] Building CXX object CMakeFiles/libtesseract.dir/src/api/wordstrboxrenderer.cpp.o
[ 74%] Building CXX object CMakeFiles/libtesseract.dir/src/arch/dotproduct.cpp.o
[ 74%] Building CXX object CMakeFiles/libtesseract.dir/src/arch/simddetect.cpp.o
[ 75%] Building CXX object CMakeFiles/libtesseract.dir/src/arch/intsimdmatrix.cpp.o
[ 75%] Building CXX object CMakeFiles/libtesseract.dir/src/arch/dotproductavx.cpp.o
[ 75%] Building CXX object CMakeFiles/libtesseract.dir/src/arch/intsimdmatrixavx2.cpp.o
[ 76%] Building CXX object CMakeFiles/libtesseract.dir/src/arch/dotproductfma.cpp.o
[ 76%] Building CXX object CMakeFiles/libtesseract.dir/src/arch/dotproductsse.cpp.o
[ 76%] Building CXX object CMakeFiles/libtesseract.dir/src/arch/intsimdmatrixsse.cpp.o
[ 77%] Linking CXX static library libtesseract.a
[ 77%] Built target libtesseract
[ 77%] Building CXX object src/training/CMakeFiles/common_training.dir/common/networkbuilder.cpp.o
[ 78%] Building CXX object CMakeFiles/tesseract.dir/src/tesseract.cpp.o
[ 79%] Building CXX object src/training/CMakeFiles/common_training.dir/common/commontraining.cpp.o
[ 80%] Building CXX object src/training/CMakeFiles/common_training.dir/common/intfeaturedist.cpp.o
[ 80%] Building CXX object src/training/CMakeFiles/common_training.dir/common/commandlineflags.cpp.o
[ 80%] Building CXX object src/training/CMakeFiles/common_training.dir/common/errorcounter.cpp.o
[ 80%] Building CXX object src/training/CMakeFiles/common_training.dir/common/sampleiterator.cpp.o
[ 80%] Building CXX object src/training/CMakeFiles/common_training.dir/common/intfeaturemap.cpp.o
[ 81%] Building CXX object src/training/CMakeFiles/common_training.dir/common/mastertrainer.cpp.o
[ 81%] Building CXX object src/training/CMakeFiles/common_training.dir/common/trainingsampleset.cpp.o
[ 81%] Building CXX object src/training/CMakeFiles/common_training.dir/common/ctc.cpp.o
[ 82%] Linking CXX static library libcommon_training.a
[ 82%] Linking CXX executable bin/tesseract
[ 82%] Built target common_training
[ 83%] Building CXX object src/training/CMakeFiles/classifier_tester.dir/classifier_tester.cpp.o
[ 83%] Building CXX object src/training/CMakeFiles/ambiguous_words.dir/ambiguous_words.cpp.o
[ 83%] Building CXX object src/training/CMakeFiles/shapeclustering.dir/shapeclustering.cpp.o
[ 85%] Building CXX object src/training/CMakeFiles/merge_unicharsets.dir/merge_unicharsets.cpp.o
[ 85%] Building CXX object src/training/CMakeFiles/cntraining.dir/cntraining.cpp.o
[ 85%] Building CXX object src/training/CMakeFiles/wordlist2dawg.dir/wordlist2dawg.cpp.o
[ 85%] Building CXX object src/training/CMakeFiles/combine_tessdata.dir/combine_tessdata.cpp.o
[ 85%] Building CXX object src/training/CMakeFiles/unicharset_training.dir/unicharset/fileio.cpp.o
[ 86%] Building CXX object src/training/CMakeFiles/mftraining.dir/mergenf.cpp.o
[ 85%] Building CXX object src/training/CMakeFiles/mftraining.dir/mftraining.cpp.o
[ 86%] Building CXX object src/training/CMakeFiles/dawg2wordlist.dir/dawg2wordlist.cpp.o
[ 87%] Building CXX object src/training/CMakeFiles/unicharset_training.dir/unicharset/icuerrorcode.cpp.o
[ 87%] Linking CXX executable ../../bin/merge_unicharsets
[ 88%] Linking CXX executable ../../bin/cntraining
[ 89%] Linking CXX executable ../../bin/wordlist2dawg
[ 90%] Linking CXX executable ../../bin/dawg2wordlist
[ 90%] Building CXX object src/training/CMakeFiles/unicharset_training.dir/unicharset/lang_model_helpers.cpp.o
[ 90%] Building CXX object src/training/CMakeFiles/unicharset_training.dir/unicharset/lstmtester.cpp.o
[ 90%] Linking CXX executable ../../bin/mftraining
[ 90%] Linking CXX executable ../../bin/shapeclustering
[ 90%] Built target tesseract
[ 90%] Linking CXX executable ../../bin/ambiguous_words
[ 90%] Linking CXX executable ../../bin/combine_tessdata
[ 91%] Building CXX object src/training/CMakeFiles/unicharset_training.dir/unicharset/lstmtrainer.cpp.o
[ 91%] Linking CXX executable ../../bin/classifier_tester
[ 91%] Built target merge_unicharsets
[ 91%] Building CXX object src/training/CMakeFiles/unicharset_training.dir/unicharset/normstrngs.cpp.o
[ 91%] Building CXX object src/training/CMakeFiles/unicharset_training.dir/unicharset/unicharset_training_utils.cpp.o
[ 91%] Built target cntraining
[ 92%] Building CXX object src/training/CMakeFiles/unicharset_training.dir/unicharset/validate_grapheme.cpp.o
[ 92%] Built target wordlist2dawg
[ 92%] Building CXX object src/training/CMakeFiles/unicharset_training.dir/unicharset/validate_indic.cpp.o
[ 92%] Building CXX object src/training/CMakeFiles/unicharset_training.dir/unicharset/validate_javanese.cpp.o
[ 92%] Built target combine_tessdata
[ 93%] Building CXX object src/training/CMakeFiles/unicharset_training.dir/unicharset/validate_khmer.cpp.o
[ 93%] Built target mftraining
[ 93%] Building CXX object src/training/CMakeFiles/unicharset_training.dir/unicharset/validate_myanmar.cpp.o
[ 93%] Built target ambiguous_words
[ 93%] Building CXX object src/training/CMakeFiles/unicharset_training.dir/unicharset/validator.cpp.o
[ 93%] Built target shapeclustering
[ 93%] Built target dawg2wordlist
[ 93%] Built target classifier_tester
[ 94%] Linking CXX static library libunicharset_training.a
[ 94%] Built target unicharset_training
[ 94%] Building CXX object src/training/CMakeFiles/combine_lang_model.dir/combine_lang_model.cpp.o
[ 94%] Building CXX object src/training/CMakeFiles/pango_training.dir/pango/pango_font_info.cpp.o
[ 94%] Building CXX object src/training/CMakeFiles/lstmtraining.dir/lstmtraining.cpp.o
[ 94%] Building CXX object src/training/CMakeFiles/lstmeval.dir/lstmeval.cpp.o
[ 94%] Building CXX object src/training/CMakeFiles/pango_training.dir/pango/boxchar.cpp.o
[ 96%] Building CXX object src/training/CMakeFiles/unicharset_extractor.dir/unicharset_extractor.cpp.o
[ 96%] Building CXX object src/training/CMakeFiles/pango_training.dir/pango/ligature_table.cpp.o
[ 96%] Building CXX object src/training/CMakeFiles/pango_training.dir/pango/stringrenderer.cpp.o
[ 97%] Building CXX object src/training/CMakeFiles/pango_training.dir/pango/tlog.cpp.o
[ 97%] Building CXX object src/training/CMakeFiles/set_unicharset_properties.dir/set_unicharset_properties.cpp.o
In file included from /data/home/tkloczko/rpmbuild/g2v/SPECS/tesseract/src/training/pango/pango_font_info.cpp:39:
/usr/include/pango-1.0/pango/pangofc-font.h:35:10: fatal error: ft2build.h: No such file or directory
35 | #include <ft2build.h>
| ^~~~~~~~~~~~
compilation terminated.
make[2]: *** [src/training/CMakeFiles/pango_training.dir/build.make:104: src/training/CMakeFiles/pango_training.dir/pango/pango_font_info.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
[ 97%] Linking CXX executable ../../bin/combine_lang_model
[ 97%] Linking CXX executable ../../bin/unicharset_extractor
[ 98%] Linking CXX executable ../../bin/set_unicharset_properties
[ 99%] Linking CXX executable ../../bin/lstmeval
[ 99%] Linking CXX executable ../../bin/lstmtraining
make[1]: *** [CMakeFiles/Makefile2:653: src/training/CMakeFiles/pango_training.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 99%] Built target combine_lang_model
[ 99%] Built target unicharset_extractor
[ 99%] Built target set_unicharset_properties
[ 99%] Built target lstmeval
[ 99%] Built target lstmtraining
make: *** [Makefile:136: all] Error 2 |
[tkloczko@ss-desktop build]$ rpm -qal | grep ft2build.h
/usr/include/freetype2/ft2build.h
[tkloczko@ss-desktop build]$ pkg-config --cflags freetype2
-I/usr/include/freetype2 |
So |
Here is the fix for pango: --- a/src/training/CMakeLists.txt~ 2021-12-17 11:00:16.000000000 +0000
+++ b/src/training/CMakeLists.txt 2021-12-17 11:21:12.056943863 +0000
@@ -297,7 +297,7 @@
if (PKG_CONFIG_FOUND OR SW_BUILD)
if (PKG_CONFIG_FOUND)
-pkg_check_modules(Pango REQUIRED pango>=1.38.0)
+pkg_check_modules(Pango REQUIRED pangoft2>=1.38.0)
pkg_check_modules(Cairo REQUIRED cairo)
pkg_check_modules(PangoFt2 REQUIRED pangoft2)
pkg_check_modules(PangoCairo REQUIRED pangocairo) Fix for missing symbol is in Fedora: --- a/CMakeLists.txt~ 2021-12-17 11:15:45.750113296 +0000
+++ b/CMakeLists.txt 2021-12-17 11:14:24.000404153 +0000
@@ -1,6 +1,7 @@
cmake_minimum_required (VERSION 3.0.0)
include (utils.cmake)
+include (GNUInstallDirs)
disallow_intree_builds()
@@ -55,14 +56,14 @@
if (UTF8PROC_INSTALL)
include(GNUInstallDirs)
- install(FILES utf8proc.h DESTINATION "${CMAKE_INSTALL_FULL_INCLUDEDIR}")
+ install(FILES utf8proc.h DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
install(TARGETS utf8proc
- ARCHIVE DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}"
- LIBRARY DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}"
- RUNTIME DESTINATION "${CMAKE_INSTALL_FULL_BINDIR}"
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
)
configure_file(libutf8proc.pc.cmakein libutf8proc.pc @ONLY)
- install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libutf8proc.pc" DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig")
+ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libutf8proc.pc" DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
endif()
if(UTF8PROC_ENABLE_TESTING) Please let me know if you want those two patches as PR. It is yet another issue. When is used |
Yes, please send it as 2 separate PR, so it can be checked by GH action. Regarding your fist patch -I think it should be like this: pkg_check_modules(Pango REQUIRED pango>=1.38.0)
pkg_check_modules(Cairo REQUIRED cairo)
- pkg_check_modules(PangoFt2 REQUIRED pangoft2)
+ pkg_check_modules(PangoFt2 REQUIRED pangoft2>=1.38.0)
pkg_check_modules(PangoCairo REQUIRED pangocairo) Can you test it on Fedora? |
I'm not using fedora. |
This is not matter minimum version pangoft2. [tkloczko@ss-desktop SPECS]$ pkg-config --cflags pangoft2
-I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/harfbuzz -I/usr/include/freetype2
[tkloczko@ss-desktop SPECS]$ pkg-config --cflags pango
-I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/harfbuzz More cmake issues:
|
I'm reverting my build procedure to GNU auto tools. However look slike GNU auto tools suffers sim,illar issues with test suit abcause it tries to compile google test submodule ainstead checking (using pkg-config) is gtest available. |
And yet another small detail. Compile time warnings: In file included from /usr/include/CL/cl.h:20,
from ./src/opencl/openclwrapper.h:30,
from src/tesseract.cpp:38:
/usr/include/CL/cl_version.h:22:104: note: '#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)'
22 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)")
| ^
In file included from /usr/include/CL/cl.h:20,
from ./src/opencl/openclwrapper.h:30,
from src/api/baseapi.cpp:45:
/usr/include/CL/cl_version.h:22:104: note: '#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)'
22 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)")
| ^
In file included from /usr/include/CL/cl.h:20,
from ./src/opencl/openclwrapper.h:30,
from src/ccmain/thresholder.cpp:24:
/usr/include/CL/cl_version.h:22:104: note: '#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)'
22 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)")
| ^
In file included from /usr/include/CL/cl.h:20,
from ./src/opencl/openclwrapper.h:30,
from src/ccstruct/otsuthr.cpp:25:
/usr/include/CL/cl_version.h:22:104: note: '#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)'
22 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)")
| ^
In file included from /usr/include/CL/cl.h:20,
from ./src/opencl/openclwrapper.h:30,
from src/textord/linefind.cpp:31:
/usr/include/CL/cl_version.h:22:104: note: '#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)'
22 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)")
| ^
src/textord/linefind.cpp: In static member function 'static void tesseract::LineFinder::GetLineMasks(int, tesseract::Image, tesseract::Image*, tesseract::Image*, tesseract::Image*, tesseract::Image*, tesseract::Image*, tesseract::Image*, Pixa*)':
src/textord/linefind.cpp:579:9: warning: unused variable 'clStatus' [-Wunused-variable]
579 | int clStatus =
| ^~~~~~~~
In file included from /usr/include/CL/cl.h:20,
from src/opencl/openclwrapper.h:30,
from src/opencl/openclwrapper.cpp:23:
/usr/include/CL/cl_version.h:22:104: note: '#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)'
22 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)")
| ^
src/opencl/openclwrapper.cpp: In function 'tesseract::ds_status tesseract::initDSProfile(tesseract::ds_profile**, const char*)':
src/opencl/openclwrapper.cpp:166:9: warning: 'void* memset(void*, int, size_t)' clearing an object of type 'struct tesseract::ds_profile' with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess]
166 | memset(profile, 0, sizeof(ds_profile));
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/opencl/openclwrapper.cpp:105:8: note: 'struct tesseract::ds_profile' declared here
105 | struct ds_profile {
| ^~~~~~~~~~
src/opencl/openclwrapper.cpp: In function 'void tesseract::populateGPUEnvFromDevice(tesseract::GPUEnv*, cl_device_id)':
src/opencl/openclwrapper.cpp:600:27: warning: '_cl_command_queue* clCreateCommandQueue(cl_context, cl_device_id, cl_command_queue_properties, cl_int*)' is deprecated [-Wdeprecated-declarations]
600 | clCreateCommandQueue(gpuInfo->mpContext, gpuInfo->mpDevID, queueProperties, &clStatus);
| ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/opencl/openclwrapper.h:30,
from src/opencl/openclwrapper.cpp:23:
/usr/include/CL/cl.h:1906:1: note: declared here
1906 | clCreateCommandQueue(cl_context context,
| ^~~~~~~~~~~~~~~~~~~~
src/opencl/openclwrapper.cpp: In static member function 'static int tesseract::OpenclDevice::HistogramRectOCL(void*, int, int, int, int, int, int, int, int*)':
src/opencl/openclwrapper.cpp:1594:10: warning: unused variable 'atomicSyncBuffer' [-Wunused-variable]
1594 | cl_mem atomicSyncBuffer =
| ^~~~~~~~~~~~~~~~
src/opencl/openclwrapper.cpp: In function 'double tesseract::histogramRectMicroBench(tesseract::GPUEnv*, tesseract::TessScoreEvaluationInputData, tesseract::ds_device_type)':
src/opencl/openclwrapper.cpp:1997:9: warning: unused variable 'retVal' [-Wunused-variable]
1997 | int retVal = OpenclDevice::HistogramRectOCL(input.imageData, input.numChannels, bytes_per_line,
| ^~~~~~
src/opencl/openclwrapper.cpp: In function 'double tesseract::thresholdRectToPixMicroBench(tesseract::GPUEnv*, tesseract::TessScoreEvaluationInputData, tesseract::ds_device_type)':
src/opencl/openclwrapper.cpp:2116:9: warning: unused variable 'retVal' [-Wunused-variable]
2116 | int retVal = OpenclDevice::ThresholdRectToPixOCL(
| ^~~~~~
src/opencl/openclwrapper.cpp: In static member function 'static tesseract::ds_device tesseract::OpenclDevice::getDeviceSelection()':
src/opencl/openclwrapper.cpp:2415:56: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
2415 | if (overrideDeviceIdx > 0 && overrideDeviceIdx <= profile->numDevices) {
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
src/opencl/openclwrapper.cpp:2443:38: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
2443 | selectedDevice.oclDeviceName = "(null)";
| ^~~~~~~~ |
Just in case .. I'm not trying to critiocize yir work. Cheers |
Some notes for clarification:
|
It should be possible to use an installed googletest on Linux hosts, but the current solution would still be needed for MacOS. Homebrew on MacOS has a
Debian has a package |
Do not waste time on compile those binaries. If some MacOS gtest binaries have some issues it is the problem of those distributed binaries .. not the tesseract, Isn't it? |
The googletest files take less than 30 seconds to compile (single threaded), and only once for a fresh build. |
So how long takes to compile other libratriues used by tesseract?🤔 |
@kloczek, your comment is not helpful. Feel free to contribute a pull request which uses an existing libgtest, but still allows to use the Git submodule. |
GoogleTest is not like other dependencies. It is used for unit testing which is not meant to be used bv most users. |
Really? One sec .. let me check .. [tkloczko@ss-desktop SPECS]$ grep BuildRequires:.*gtest *
dwgrep.spec:BuildRequires: gtest-devel
google-benchmark.spec:BuildRequires: gtest-devel
gumbo-parser.spec:BuildRequires: gtest-devel
libecpint.spec:BuildRequires: gtest-devel
libphonenumber.spec:BuildRequires: gtest-devel
meson.spec:BuildRequires: gtest-devel
msgpack.spec:BuildRequires: gtest-devel
ninja-build.spec:BuildRequires: gtest-devel
proj.spec:BuildRequires: pkgconfig(gtest) >= 1.8.0
protobuf.spec:BuildRequires: pkgconfig(gtest)
rapidjson.spec:BuildRequires: gtest-devel
uriparser.spec:BuildRequires: gtest-devel
utf8cpp.spec:BuildRequires: gtest-devel
xsimd.spec:BuildRequires: gtest-devel
zstd.spec:BuildRequires: gtest-devel |
Again your comment is not helpful. On Debian, very few packages require |
It is some reason why gtest provides public interface with header files and pkgconfig file as well. I could understand to fall back to compile it if system gtest is not available but this is not the case here. |
Is there still a build problem, or can this issue be closed? |
I don't remember. |
Looks like local copy of the google test still is in use + /usr/bin/make -O -j12 V=1 VERBOSE=1 check
Making check in .
/usr/bin/make apiexample_test applybox_test baseapi_test baseapi_thread_test bitvector_test cleanapi_test colpartition_test commandlineflags_test dawg_test denorm_test equationdetect_test fileio_test heap_test imagedata_test indexmapbidi_test intfeaturemap_test intsimdmatrix_test lang_model_test layout_test ligature_table_test linlsq_test list_test lstm_recode_test lstm_squashed_test lstm_test lstmtrainer_test loadlang_test mastertrainer_test matrix_test networkio_test normstrngs_test nthitem_test osd_test pagesegmode_test pango_font_info_test paragraphs_test params_model_test progress_test qrsequence_test recodebeam_test rect_test resultiterator_test scanutils_test shapetable_test stats_test stridemap_test stringrenderer_test tablefind_test tablerecog_test tabvector_test tatweel_test textlineprojection_test tfile_test unichar_test unicharcompress_test unicharset_test validate_grapheme_test validate_indic_test validate_khmer_test validate_myanmar_test validator_test libgtest.la libgtest_main.la libgmock.la libgmock_main.la
make[2]: *** No rule to make target 'unittest/third_party/googletest/googletest/src/gtest-all.cc', needed by 'unittest/third_party/googletest/googletest/src/libgtest_la-gtest-all.lo'. Stop.
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [Makefile:9033: check-am] Error 2
make: *** [Makefile:8151: check-recursive] Error 1
make: *** Waiting for unfinished jobs.... |
Yes, and the local copy works fine. In your build you just forgot to run I close the issue as there seem to be no other problems. |
cmake setup:
And buuild fails in:
The text was updated successfully, but these errors were encountered: