jpeg_mem_src was not declared on Solaris
Hello,
trying to build poppler-22.07.0 and the build failed with this:
-- Found JPEG: /usr/lib/libjpeg.so (found version "62")
...
Building Poppler with support for: font configuration: fontconfig
use boost (Splash): no cairo output: yes
qt5 wrapper: no
qt6 wrapper: no
glib wrapper: yes introspection: no
gtk-doc: no cpp wrapper: yes
use libjpeg: yes
use libpng: yes
use libtiff: yes use zlib compress: no
use zlib uncompress: no use nss3: yes
use curl: yes
use libopenjpeg2: yes
use lcms2: yes command line utils: yes
fuzz target: no test data dir: /builds/mrehak/workspace/poppler/components/desktop/poppler/poppler-22.07.0/../test
...
[ 26%] Building CXX object CMakeFiles/poppler.dir/poppler/LocalPDFDocBuilder.cc.o
/builds/mrehak/workspace/poppler/components/desktop/poppler/poppler-22.07.0/poppler/ImageEmbeddingUtils.cc: In static member function 'static std::unique_ptr<ImageEmbeddingUtils::ImageEmbedder> ImageEmbeddingUtils::JpegEmbedder::create(std::unique_ptr<unsigned char []>&&, Goffset)':
/builds/mrehak/workspace/poppler/components/desktop/poppler/poppler-22.07.0/poppler/ImageEmbeddingUtils.cc:344:9: error: 'jpeg_mem_src' was not declared in this scope; did you mean 'jpeg_stdio_src'?
344 | jpeg_mem_src(&info, fileContent.get(), static_cast<unsigned long>(fileSize));
| ^~~~~~~~~~~~
| jpeg_stdio_src
I am trying to compile poppler against openjpeg2-2.4. poppler-21.10.0 built without this issue, because there is no reference to jpeg_mem_src()
funtion. I see that there is turbo-jpeg implementation which defines this funtion, but it is not available on Solaris (yet). Also it seems the new version still tries to detect openjpeg2. Any idea what to do?
Thanks, Martin