microsoft / vcpkg

C++ Library Manager for Windows, Linux, and MacOS
MIT License
23.25k stars 6.41k forks source link

[tesseract:arm64-linux] build failure #13395

Closed simon987 closed 4 years ago

simon987 commented 4 years ago

Host Environment

Failure logs

Starting package 8/7: tesseract:arm64-linux
Building package tesseract[core]:arm64-linux...
Could not locate cached archive: /home/ubuntu/.cache/vcpkg/archives/ec/ecc8051dfa41f517b2481abbf68a9368d5ee0eb9.zip
-- Using community triplet arm64-linux. This triplet configuration is not guaranteed to succeed.
-- [COMMUNITY] Loading triplet configuration from: /mnt/disk/vcpkg/triplets/community/arm64-linux.cmake
-- Downloading https://github.com/tesseract-ocr/tesseract/archive/4.1.1.tar.gz...
-- Extracting source /mnt/disk/vcpkg/downloads/tesseract-ocr-tesseract-4.1.1.tar.gz
-- Applying patch fix-tiff-linkage.patch
-- Applying patch fix-text2image.patch
-- Using source at /mnt/disk/vcpkg/buildtrees/tesseract/src/4.1.1-1402ed03b0.clean
-- Configuring arm64-linux-dbg
-- Configuring arm64-linux-rel
-- Building arm64-linux-dbg
CMake Error at scripts/cmake/vcpkg_execute_build_process.cmake:141 (message):
    Command failed: /usr/bin/cmake --build . --config Debug --target install -- -v
    Working Directory: /mnt/disk/vcpkg/buildtrees/tesseract/arm64-linux-dbg
    See logs for more information:
      /mnt/disk/vcpkg/buildtrees/tesseract/install-arm64-linux-dbg-out.log

Call Stack (most recent call first):
  scripts/cmake/vcpkg_build_cmake.cmake:91 (vcpkg_execute_build_process)
  scripts/cmake/vcpkg_install_cmake.cmake:24 (vcpkg_build_cmake)
  ports/tesseract/portfile.cmake:45 (vcpkg_install_cmake)
  scripts/ports.cmake:79 (include)

Error: Building package tesseract:arm64-linux failed with: BUILD_FAILED
Please ensure you're using the latest portfiles with `./vcpkg update`, then
submit an issue at https://github.com/Microsoft/vcpkg/issues including:
  Package: tesseract:arm64-linux
  Vcpkg version: 2020.06.15-unknownhash

Tail of vcpkg/buildtrees/tesseract/install-arm64-linux-dbg-out.log:

...
[232/234] : && /usr/bin/cmake -E remove libtesseract.a && /usr/bin/ar qc libtesseract.a  CMakeFiles/libtesseract.dir/src/ccmain/adaptions.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/applybox.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/control.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/docqual.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/equationdetect.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/fixspace.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/fixxht.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/linerec.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/ltrresultiterator.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/mutableiterator.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/osdetect.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/output.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/pageiterator.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/pagesegmain.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/pagewalk.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/par_control.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/paragraphs.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/paramsd.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/pgedit.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/recogtraining.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/reject.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/resultiterator.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/superscript.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/tessbox.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/tessedit.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/tesseractclass.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/tessvars.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/tfacepp.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/thresholder.cpp.o CMakeFiles/libtesseract.dir/src/ccmain/werdit.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/blamer.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/blobbox.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/blobs.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/blread.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/boxread.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/boxword.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/ccstruct.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/coutln.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/detlinefit.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/dppoint.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/fontinfo.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/imagedata.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/linlsq.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/matrix.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/mod128.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/normalis.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/ocrblock.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/ocrpara.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/ocrrow.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/otsuthr.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/pageres.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/params_training_featdef.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/pdblock.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/points.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/polyaprx.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/polyblk.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/publictypes.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/quadlsq.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/quspline.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/ratngs.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/rect.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/rejctmap.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/seam.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/split.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/statistc.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/stepblob.cpp.o CMakeFiles/libtesseract.dir/src/ccstruct/werd.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/ambigs.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/bitvector.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/ccutil.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/clst.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/elst.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/elst2.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/errcode.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/globaloc.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/indexmapbidi.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/mainblk.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/params.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/scanutils.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/serialis.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/strngs.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/tessdatamanager.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/tprintf.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/unichar.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/unicharcompress.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/unicharmap.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/unicharset.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/unicodes.cpp.o CMakeFiles/libtesseract.dir/src/ccutil/universalambigs.cpp.o CMakeFiles/libtesseract.dir/src/classify/adaptive.cpp.o CMakeFiles/libtesseract.dir/src/classify/adaptmatch.cpp.o CMakeFiles/libtesseract.dir/src/classify/blobclass.cpp.o CMakeFiles/libtesseract.dir/src/classify/classify.cpp.o CMakeFiles/libtesseract.dir/src/classify/cluster.cpp.o CMakeFiles/libtesseract.dir/src/classify/clusttool.cpp.o CMakeFiles/libtesseract.dir/src/classify/cutoffs.cpp.o CMakeFiles/libtesseract.dir/src/classify/featdefs.cpp.o CMakeFiles/libtesseract.dir/src/classify/float2int.cpp.o CMakeFiles/libtesseract.dir/src/classify/fpoint.cpp.o CMakeFiles/libtesseract.dir/src/classify/intfeaturedist.cpp.o CMakeFiles/libtesseract.dir/src/classify/intfeaturemap.cpp.o CMakeFiles/libtesseract.dir/src/classify/intfeaturespace.cpp.o CMakeFiles/libtesseract.dir/src/classify/intfx.cpp.o CMakeFiles/libtesseract.dir/src/classify/intmatcher.cpp.o CMakeFiles/libtesseract.dir/src/classify/intproto.cpp.o CMakeFiles/libtesseract.dir/src/classify/kdtree.cpp.o CMakeFiles/libtesseract.dir/src/classify/mf.cpp.o CMakeFiles/libtesseract.dir/src/classify/mfdefs.cpp.o CMakeFiles/libtesseract.dir/src/classify/mfoutline.cpp.o CMakeFiles/libtesseract.dir/src/classify/mfx.cpp.o CMakeFiles/libtesseract.dir/src/classify/normfeat.cpp.o CMakeFiles/libtesseract.dir/src/classify/normmatch.cpp.o CMakeFiles/libtesseract.dir/src/classify/ocrfeatures.cpp.o CMakeFiles/libtesseract.dir/src/classify/outfeat.cpp.o CMakeFiles/libtesseract.dir/src/classify/picofeat.cpp.o CMakeFiles/libtesseract.dir/src/classify/protos.cpp.o CMakeFiles/libtesseract.dir/src/classify/sampleiterator.cpp.o CMakeFiles/libtesseract.dir/src/classify/shapeclassifier.cpp.o CMakeFiles/libtesseract.dir/src/classify/shapetable.cpp.o CMakeFiles/libtesseract.dir/src/classify/tessclassifier.cpp.o CMakeFiles/libtesseract.dir/src/classify/trainingsample.cpp.o CMakeFiles/libtesseract.dir/src/classify/trainingsampleset.cpp.o CMakeFiles/libtesseract.dir/src/cutil/callcpp.cpp.o CMakeFiles/libtesseract.dir/src/cutil/cutil_class.cpp.o CMakeFiles/libtesseract.dir/src/cutil/emalloc.cpp.o CMakeFiles/libtesseract.dir/src/cutil/oldlist.cpp.o CMakeFiles/libtesseract.dir/src/dict/context.cpp.o CMakeFiles/libtesseract.dir/src/dict/dawg.cpp.o CMakeFiles/libtesseract.dir/src/dict/dawg_cache.cpp.o CMakeFiles/libtesseract.dir/src/dict/dict.cpp.o CMakeFiles/libtesseract.dir/src/dict/hyphen.cpp.o CMakeFiles/libtesseract.dir/src/dict/permdawg.cpp.o CMakeFiles/libtesseract.dir/src/dict/stopper.cpp.o CMakeFiles/libtesseract.dir/src/dict/trie.cpp.o CMakeFiles/libtesseract.dir/src/lstm/convolve.cpp.o CMakeFiles/libtesseract.dir/src/lstm/ctc.cpp.o CMakeFiles/libtesseract.dir/src/lstm/fullyconnected.cpp.o CMakeFiles/libtesseract.dir/src/lstm/functions.cpp.o CMakeFiles/libtesseract.dir/src/lstm/input.cpp.o CMakeFiles/libtesseract.dir/src/lstm/lstm.cpp.o CMakeFiles/libtesseract.dir/src/lstm/lstmrecognizer.cpp.o CMakeFiles/libtesseract.dir/src/lstm/lstmtrainer.cpp.o CMakeFiles/libtesseract.dir/src/lstm/maxpool.cpp.o CMakeFiles/libtesseract.dir/src/lstm/network.cpp.o CMakeFiles/libtesseract.dir/src/lstm/networkbuilder.cpp.o CMakeFiles/libtesseract.dir/src/lstm/networkio.cpp.o CMakeFiles/libtesseract.dir/src/lstm/parallel.cpp.o CMakeFiles/libtesseract.dir/src/lstm/plumbing.cpp.o CMakeFiles/libtesseract.dir/src/lstm/recodebeam.cpp.o CMakeFiles/libtesseract.dir/src/lstm/reconfig.cpp.o CMakeFiles/libtesseract.dir/src/lstm/reversed.cpp.o CMakeFiles/libtesseract.dir/src/lstm/series.cpp.o CMakeFiles/libtesseract.dir/src/lstm/stridemap.cpp.o CMakeFiles/libtesseract.dir/src/lstm/tfnetwork.cpp.o CMakeFiles/libtesseract.dir/src/lstm/weightmatrix.cpp.o CMakeFiles/libtesseract.dir/src/opencl/openclwrapper.cpp.o CMakeFiles/libtesseract.dir/src/textord/alignedblob.cpp.o CMakeFiles/libtesseract.dir/src/textord/baselinedetect.cpp.o CMakeFiles/libtesseract.dir/src/textord/bbgrid.cpp.o CMakeFiles/libtesseract.dir/src/textord/blkocc.cpp.o CMakeFiles/libtesseract.dir/src/textord/blobgrid.cpp.o CMakeFiles/libtesseract.dir/src/textord/ccnontextdetect.cpp.o CMakeFiles/libtesseract.dir/src/textord/cjkpitch.cpp.o CMakeFiles/libtesseract.dir/src/textord/colfind.cpp.o CMakeFiles/libtesseract.dir/src/textord/colpartition.cpp.o CMakeFiles/libtesseract.dir/src/textord/colpartitiongrid.cpp.o CMakeFiles/libtesseract.dir/src/textord/colpartitionset.cpp.o CMakeFiles/libtesseract.dir/src/textord/devanagari_processing.cpp.o CMakeFiles/libtesseract.dir/src/textord/drawtord.cpp.o CMakeFiles/libtesseract.dir/src/textord/edgblob.cpp.o CMakeFiles/libtesseract.dir/src/textord/edgloop.cpp.o CMakeFiles/libtesseract.dir/src/textord/equationdetectbase.cpp.o CMakeFiles/libtesseract.dir/src/textord/fpchop.cpp.o CMakeFiles/libtesseract.dir/src/textord/gap_map.cpp.o CMakeFiles/libtesseract.dir/src/textord/imagefind.cpp.o CMakeFiles/libtesseract.dir/src/textord/linefind.cpp.o CMakeFiles/libtesseract.dir/src/textord/makerow.cpp.o CMakeFiles/libtesseract.dir/src/textord/oldbasel.cpp.o CMakeFiles/libtesseract.dir/src/textord/pithsync.cpp.o CMakeFiles/libtesseract.dir/src/textord/pitsync1.cpp.o CMakeFiles/libtesseract.dir/src/textord/scanedg.cpp.o CMakeFiles/libtesseract.dir/src/textord/sortflts.cpp.o CMakeFiles/libtesseract.dir/src/textord/strokewidth.cpp.o CMakeFiles/libtesseract.dir/src/textord/tabfind.cpp.o CMakeFiles/libtesseract.dir/src/textord/tablefind.cpp.o CMakeFiles/libtesseract.dir/src/textord/tablerecog.cpp.o CMakeFiles/libtesseract.dir/src/textord/tabvector.cpp.o CMakeFiles/libtesseract.dir/src/textord/textlineprojection.cpp.o CMakeFiles/libtesseract.dir/src/textord/textord.cpp.o CMakeFiles/libtesseract.dir/src/textord/topitch.cpp.o CMakeFiles/libtesseract.dir/src/textord/tordmain.cpp.o CMakeFiles/libtesseract.dir/src/textord/tospace.cpp.o CMakeFiles/libtesseract.dir/src/textord/tovars.cpp.o CMakeFiles/libtesseract.dir/src/textord/underlin.cpp.o CMakeFiles/libtesseract.dir/src/textord/wordseg.cpp.o CMakeFiles/libtesseract.dir/src/textord/workingpartset.cpp.o CMakeFiles/libtesseract.dir/src/viewer/scrollview.cpp.o CMakeFiles/libtesseract.dir/src/viewer/svmnode.cpp.o CMakeFiles/libtesseract.dir/src/viewer/svpaint.cpp.o CMakeFiles/libtesseract.dir/src/viewer/svutil.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/associate.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/chop.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/chopper.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/drawfx.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/findseam.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/gradechop.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/language_model.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/lm_consistency.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/lm_pain_points.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/lm_state.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/outlines.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/params_model.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/pieces.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/plotedges.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/render.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/segsearch.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/tface.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/wordclass.cpp.o CMakeFiles/libtesseract.dir/src/wordrec/wordrec.cpp.o CMakeFiles/libtesseract.dir/src/api/baseapi.cpp.o CMakeFiles/libtesseract.dir/src/api/capi.cpp.o CMakeFiles/libtesseract.dir/src/api/renderer.cpp.o CMakeFiles/libtesseract.dir/src/api/altorenderer.cpp.o CMakeFiles/libtesseract.dir/src/api/hocrrenderer.cpp.o CMakeFiles/libtesseract.dir/src/api/lstmboxrenderer.cpp.o CMakeFiles/libtesseract.dir/src/api/pdfrenderer.cpp.o CMakeFiles/libtesseract.dir/src/api/wordstrboxrenderer.cpp.o CMakeFiles/libtesseract.dir/src/arch/dotproduct.cpp.o CMakeFiles/libtesseract.dir/src/arch/simddetect.cpp.o CMakeFiles/libtesseract.dir/src/arch/intsimdmatrix.cpp.o && /usr/bin/ranlib libtesseract.a && :
[233/234] : && /usr/bin/c++  -fPIC -g -Wall -DDEBUG -pedantic -Og   CMakeFiles/tesseract.dir/src/api/tesseractmain.cpp.o  -o bin/tesseract  libtesseract.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libtiffd.a  -lpthread  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libleptonica.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libgif.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libjpeg.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libpng16d.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libtiffd.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/liblzmad.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libjpeg.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libpng16d.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libtiffd.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/liblzmad.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libz.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libwebpd.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libz.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libwebpd.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libbz2d.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libxml2.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/liblz4d.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/liblzo2.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libz.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/liblzmad.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libjpeg.a  -lm && :
FAILED: bin/tesseract 
: && /usr/bin/c++  -fPIC -g -Wall -DDEBUG -pedantic -Og   CMakeFiles/tesseract.dir/src/api/tesseractmain.cpp.o  -o bin/tesseract  libtesseract.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libtiffd.a  -lpthread  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libleptonica.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libgif.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libjpeg.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libpng16d.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libtiffd.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/liblzmad.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libjpeg.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libpng16d.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libtiffd.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/liblzmad.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libz.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libwebpd.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libz.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libwebpd.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libbz2d.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libxml2.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/liblz4d.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/liblzo2.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libz.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/liblzmad.a  /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libjpeg.a  -lm && :
/usr/bin/ld: /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libpng16d.a(pngrtran.c.o): in function `png_do_expand_palette':
/mnt/disk/vcpkg/buildtrees/libpng/src/v1.6.37-10db9f58e4.clean/pngrtran.c:4323: undefined reference to `png_do_expand_palette_rgba8_neon'
/usr/bin/ld: /mnt/disk/vcpkg/buildtrees/libpng/src/v1.6.37-10db9f58e4.clean/pngrtran.c:4354: undefined reference to `png_do_expand_palette_rgb8_neon'
/usr/bin/ld: /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libpng16d.a(pngrtran.c.o): in function `png_do_read_transformations':
/mnt/disk/vcpkg/buildtrees/libpng/src/v1.6.37-10db9f58e4.clean/pngrtran.c:4782: undefined reference to `png_riffle_palette_neon'
/usr/bin/ld: /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libpng16d.a(pngrutil.c.o): in function `png_init_filter_functions':
/mnt/disk/vcpkg/buildtrees/libpng/src/v1.6.37-10db9f58e4.clean/pngrutil.c:4126: undefined reference to `png_init_filter_functions_neon'
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.

Additional context It looks like libpng failed to detect that NEON instructions are available and compiled without those *_neon functions? Or is it possible that it's linking to the system libraries (I have VCPKG_FORCE_SYSTEM_BINARIES=on) and they are not compiled with those functions?

If a maintainer wants to test the issue, I can provide credentials to an arm64 AWS machine with that behavior (email me me@simon987.net)

simon987 commented 4 years ago

Note:

nm /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libpng16d.a  | grep _neon
                 U png_do_expand_palette_rgb8_neon
                 U png_do_expand_palette_rgba8_neon
                 U png_riffle_palette_neon
                 U png_init_filter_functions_neon
PhoebeHui commented 4 years ago

This is not usual scenario we're working on now, but we accept PRs for fixing this issue. Sorry for that.

simon987 commented 4 years ago

If I manually build libpng I don't get this error:

git clone https://github.com/glennrp/libpng
cd libpng
cmake .
make
cp -r libpng16.a /mnt/disk/vcpkg/installed/arm64-linux/debug/lib/libpng16d.a
cp -r libpng16.a /mnt/disk/vcpkg/installed/arm64-linux/lib/libpng16.a
vcpkg install tesseract # works

Do you have any clue/pointers in what ways vcpkg builds the library differently to cause it to not include the arm/* functions?

x-projs commented 4 years ago

I'll take a look this issue. @PhoebeHui you can assign arm64-linux/arm-linux build issues to me if your team doesn't have time to work on it.

simon987 commented 4 years ago

Awesome! Thank you so much @xieyubo :heart: !

PhoebeHui commented 4 years ago

Thank you @xieyubo! I assigned this issue to you.

x-projs commented 4 years ago

This issue should be fixed by commit 27a2418e91179d8607862348d7b498558e98a0ab. @PhoebeHui you can close this now.