[poppler] building 0.68 and 0.69

Valerio Messina efa at iol.it
Mon Sep 24 22:07:52 UTC 2018


On 09/24/18 20:01, Albert Astals Cid wrote:
> in the openjp packages, if they are not there, it means the ubuntu
> packages are broken.
>
> Open a bug in their tracker.

sure:
https://bugs.launchpad.net/ubuntu/+source/openjpeg2/+bug/1794194
18.04 seems more broken than 16.04 in openjpeg2 support.


On 09/24/18 20:21, Adam Reichold wrote:
> I do see similar errors when building on Debian unstable or Ubuntu 
> 18.04, but CMake and hence the build do not fail, please have a look
> at the attached log of building Poppler 0.69 using the current 
> ubuntu:bionic Docker image which also contains a list of all
> install ed dependencies. (Make sure to enable the source code
> repositories so that "apt build-dep" works.)

yesterday build was on Ubuntu 16.04 xenial.

Today I made a test on Ubuntu 18.04 and I got three more similar errors,
see below.

jpip_to_jp2
jpip_to_j2k
addXMLinJP2

that are provided in openjpip-dec-server package with Ubuntu 16.04,
completely miss on 18.04 bionic, see:
http://packages.ubuntu.com/


I saw from your log report, more missing packages than mine, I had:
libopenjpip.so.2.3.0
opj_decompress
opj_compress
opj_dump
opj_jpip_addxml
opj_server
opj_dec_server
opj_jpip_transcode
opj_jpip_test
but differently than your Docker image, on both my systems, cmake stop.

I haven't:
/usr/lib/x86_64-linux-gnu/libopenjp2.a
but doesn't complaint for it on my cmake.


In the mean time, how to switch to "internal unmaintained JPX decoder"
or to disable support for Jpeg2000/Jpip at all?

thank you,
Valerio


on Ubuntu 18.04:
-----------------------------------------------------------
...
-- Performing Test ICONV_SECOND_ARGUMENT_IS_CONST
-- Performing Test ICONV_SECOND_ARGUMENT_IS_CONST - Failed
-- Found Iconv: /usr/lib/x86_64-linux-gnu/libc.so
-- The imported target "openjpip_local" references the file
    "/usr/lib/x86_64-linux-gnu/libopenjpip_local.a"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
    "/usr/lib/x86_64-linux-gnu/openjpeg-1.5/OpenJPEGTargets.cmake"
but not all the files it references.

-- The imported target "openjpip_server" references the file
    "/usr/lib/x86_64-linux-gnu/libopenjpip_server.a"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
    "/usr/lib/x86_64-linux-gnu/openjpeg-1.5/OpenJPEGTargets.cmake"
but not all the files it references.

-- The imported target "addXMLinJP2" references the file
    "/usr/bin/addXMLinJP2"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
    "/usr/lib/x86_64-linux-gnu/openjpeg-1.5/OpenJPEGTargets.cmake"
but not all the files it references.

-- The imported target "jpip_to_jp2" references the file
    "/usr/bin/jpip_to_jp2"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
    "/usr/lib/x86_64-linux-gnu/openjpeg-1.5/OpenJPEGTargets.cmake"
but not all the files it references.

-- The imported target "jpip_to_j2k" references the file
    "/usr/bin/jpip_to_j2k"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
    "/usr/lib/x86_64-linux-gnu/openjpeg-1.5/OpenJPEGTargets.cmake"
but not all the files it references.

CMake Error at CMakeLists.txt:207 (message):
   Install libopenjpeg2 before trying to build poppler.  You can also decide
   to use the internal unmaintained JPX decoder or none at all.


-- Configuring incomplete, errors occurred!
See also "/home/efa/c/poppler-0.69.0/build/CMakeFiles/CMakeOutput.log".
See also "/home/efa/c/poppler-0.69.0/build/CMakeFiles/CMakeError.log".




/home/efa/c/poppler-0.69.0/build/CMakeFiles/CMakeError.log
====================================================================
Determining if the pthread_create exist failed with the following output:
Change Dir: /home/efa/c/poppler-0.69.0/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_23d84/fast"
/usr/bin/make -f CMakeFiles/cmTC_23d84.dir/build.make 
CMakeFiles/cmTC_23d84.dir/build
make[1]: Entering directory 
'/home/efa/c/poppler-0.69.0/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_23d84.dir/CheckSymbolExists.c.o
/usr/bin/cc   -std=c99 -D_DEFAULT_SOURCE    -o 
CMakeFiles/cmTC_23d84.dir/CheckSymbolExists.c.o   -c 
/home/efa/c/poppler-0.69.0/build/CMakeFiles/CMakeTmp/CheckSymbolExists.c
Linking C executable cmTC_23d84
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_23d84.dir/link.txt 
--verbose=1
/usr/bin/cc -std=c99 -D_DEFAULT_SOURCE     -rdynamic 
CMakeFiles/cmTC_23d84.dir/CheckSymbolExists.c.o  -o cmTC_23d84
CMakeFiles/cmTC_23d84.dir/CheckSymbolExists.c.o: In function `main':
CheckSymbolExists.c:(.text+0x1b): undefined reference to `pthread_create'
collect2: error: ld returned 1 exit status
CMakeFiles/cmTC_23d84.dir/build.make:97: recipe for target 'cmTC_23d84' 
failed
make[1]: *** [cmTC_23d84] Error 1
make[1]: Leaving directory 
'/home/efa/c/poppler-0.69.0/build/CMakeFiles/CMakeTmp'
Makefile:126: recipe for target 'cmTC_23d84/fast' failed
make: *** [cmTC_23d84/fast] Error 2

File 
/home/efa/c/poppler-0.69.0/build/CMakeFiles/CMakeTmp/CheckSymbolExists.c:
/* */
#include <pthread.h>

int main(int argc, char** argv)
{
   (void)argv;
#ifndef pthread_create
   return ((int*)(&pthread_create))[argc];
#else
   (void)argc;
   return 0;
#endif
}

Performing C++ SOURCE FILE Test ICONV_SECOND_ARGUMENT_IS_CONST failed 
with the following output:
Change Dir: /home/efa/c/poppler-0.69.0/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_c4247/fast"
/usr/bin/make -f CMakeFiles/cmTC_c4247.dir/build.make 
CMakeFiles/cmTC_c4247.dir/build
make[1]: Entering directory 
'/home/efa/c/poppler-0.69.0/build/CMakeFiles/CMakeTmp'
Building CXX object CMakeFiles/cmTC_c4247.dir/src.cxx.o
/usr/bin/c++    -fno-exceptions -fno-check-new -fno-common 
-D_DEFAULT_SOURCE -DICONV_SECOND_ARGUMENT_IS_CONST   -o 
CMakeFiles/cmTC_c4247.dir/src.cxx.o -c 
/home/efa/c/poppler-0.69.0/build/CMakeFiles/CMakeTmp/src.cxx
/home/efa/c/poppler-0.69.0/build/CMakeFiles/CMakeTmp/src.cxx: In 
function 'int main()':
/home/efa/c/poppler-0.69.0/build/CMakeFiles/CMakeTmp/src.cxx:9:17: 
error: invalid conversion from 'const char**' to 'char**' [-fpermissive]
      iconv(conv, &in, &ilen, &out, &olen);
                  ^~~
In file included from 
/home/efa/c/poppler-0.69.0/build/CMakeFiles/CMakeTmp/src.cxx:2:0:
/usr/include/iconv.h:42:15: note:   initializing argument 2 of 'size_t 
iconv(iconv_t, char**, size_t*, char**, size_t*)'
  extern size_t iconv (iconv_t __cd, char **__restrict __inbuf,
                ^~~~~
CMakeFiles/cmTC_c4247.dir/build.make:65: recipe for target 
'CMakeFiles/cmTC_c4247.dir/src.cxx.o' failed
make[1]: *** [CMakeFiles/cmTC_c4247.dir/src.cxx.o] Error 1
make[1]: Leaving directory 
'/home/efa/c/poppler-0.69.0/build/CMakeFiles/CMakeTmp'
Makefile:126: recipe for target 'cmTC_c4247/fast' failed
make: *** [cmTC_c4247/fast] Error 2

Source file was:

   #include <iconv.h>
   int main(){
     iconv_t conv = 0;
     const char* in = 0;
     size_t ilen = 0;
     char* out = 0;
     size_t olen = 0;
     iconv(conv, &in, &ilen, &out, &olen);
     return 0;
   }



-- 
Valerio


More information about the poppler mailing list