POV-Ray : Newsgroups : povray.unix : 3.7RC7 compilation in Debian 7 (wheezy) Server Time
23 Dec 2024 08:08:45 EST (-0500)
  3.7RC7 compilation in Debian 7 (wheezy) (Message 1 to 3 of 3)  
From: zebulon
Subject: 3.7RC7 compilation in Debian 7 (wheezy)
Date: 12 May 2013 10:30:01
Message: <web.518fa5615ef772098a72e8240@news.povray.org>
Hi,

After installing the new debian wheezy, I had to recompile my povray 3.7 (which
is now RC7, it was RC6 before).
I have problems now to use jpeg images (read or write) :

If the scene use a jpeg image to read (eg: in a image_map{}), or on write (eg:
+fj), I have this error :
"libjpeg: ... structure size don't match ... size would be XXX, found YYY..."
and povray fail.

It's because, libtiff AND libsdl requires now libjpeg8 -- instead of libjpeg6x
before. So, embedded includes and new packages won't match.

I tried to throw away libtiff (since I never use this format), and libsdl (hu !
sic ! :s), to force the use of libjpeg6.
But, after the ./configure, I can see I won't have any display, even if I use
--with-x (with all X11-dev needed included):

$ ./configure --enable-watch-cursor --disable-pipe --disable-io-restrictions
--without-libtiff --without-libsdl --with-x COMPILED_BY='...'
NON_REDISTRIBUTABLE_BUILD=yes

========================================================================
Configure POV-Ray version 3.7.0.RC7
========================================================================

This is an unofficial version
The POV-Ray Team(tm) is not responsible for supporting this version.

Environment
-----------
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
/bin/bash: /home/zebulon/Sources/Povray: No such file or directory
configure: WARNING: `missing' script is too old or missing
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether $C_INCLUDE_PATH contains the "." path... no
checking whether $CPLUS_INCLUDE_PATH contains the "." path... no

Programs
--------
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for stdlib.h... (cached) yes
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking whether the g++ compiler works... yes
checking how to run the C++ preprocessor... g++ -E
checking for C++ compiler vendor... gnu
checking for g++ version... 4.7
checking for ranlib... ranlib

Libraries
---------
checking whether to link with cygwin DLL... no
checking whether to enable static linking... no
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... no
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking if more special flags are required for pthreads... no
checking for boostlib >= 1.37... yes  [found 1.49]
checking whether the Boost::Thread library is available... yes
checking for exit in -lboost_thread-mt... yes
checking whether the boost thread library is usable... yes
checking for sin in -lmkl... no
checking for sin in -lm... yes
checking for clock_gettime in -lrt... yes
checking whether to use the ZLIB library... yes
checking for library containing zlibVersion... -lz
checking zlib.h usability... yes
checking zlib.h presence... yes
checking for zlib.h... yes
checking for libz version >= 1.2.1...  1.2.7, ok
checking whether to use the PNG library... yes
checking for library containing png_get_libpng_ver... -lpng
checking png.h usability... yes
checking png.h presence... yes
checking for png.h... yes
checking for libpng version >= 1.2.5... 1.2.49, ok
checking whether to use the JPEG library... yes
checking for library containing jpeg_std_error... -ljpeg
checking jpeglib.h usability... yes
checking jpeglib.h presence... yes
checking for jpeglib.h... yes
checking for libjpeg version >= 6b (62)... 62, ok
checking whether to use the TIFF library... no (NON DISTRIBUTABLE BUILD)
configure: WARNING: all program features using the TIFF library are disabled
checking whether to use the OpenEXR library... yes
checking for pkg-config... pkg-config
checking for OpenEXR's pkg-config... yes
checking for OpenEXR version >= 1.2... 1.6.1, ok
checking OpenEXR/ImfCRgbaFile.h usability... yes
checking OpenEXR/ImfCRgbaFile.h presence... yes
checking for OpenEXR/ImfCRgbaFile.h... yes
checking for ImfInputReadPixels in -lIlmImf... yes
checking for X... libraries /usr/lib, headers /usr/include
checking whether -R must be followed by a space... neither works
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... no
checking X11/Xlib.h usability... yes
checking X11/Xlib.h presence... yes
checking for X11/Xlib.h... yes
checking for XFlush in -lX11... yes
checking X11/xpm.h usability... yes
checking X11/xpm.h presence... yes
checking for X11/xpm.h... yes
checking for XpmCreatePixmapFromData in -lXpm... yes
checking whether to enable the watch cursor... yes
checking X11/cursorfont.h usability... yes
checking X11/cursorfont.h presence... yes
checking for X11/cursorfont.h... yes
checking for XCreateFontCursor... yes
checking for sdl-config... no
checking for libSDL... not found
configure: WARNING: the preview display is disabled [so, it should set X11
instead of no-display at all, no :?]

Language constructs and functions
---------------------------------
checking whether time.h and sys/time.h may both be included... yes
checking time.h usability... yes
checking time.h presence... yes
checking for time.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking sys/resource.h usability... yes
checking sys/resource.h presence... yes
checking for sys/resource.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking for size_t... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking size of int... 4
checking size of long int... 4
checking size of size_t... 4
checking size of float... 4
checking for working memcmp... yes
checking for vsnprintf... yes
checking for getcwd... yes
checking for nanosleep... yes
checking for clock_gettime... yes
checking for getrusage... yes
checking for gettimeofday... yes
checking for asinh... yes

Compiling
---------
checking whether to enable pipes for communications... no
checking whether g++ accepts -Wno-multichar... yes
checking whether g++ accepts -Wno-write-strings... yes
checking whether g++ accepts -fno-enforce-eh-specs... yes
checking whether to enable I/O restrictions... no
checking whether to enable debugging... no
checking whether to enable profiling... no
checking whether to enable stripping... yes
checking whether g++ accepts -s... yes
checking whether to enable optimizations... yes
checking whether g++ accepts -O3... yes
checking whether g++ accepts -ffast-math... yes
checking whether to enable architecture-specific optimizations... yes
checking whether g++ accepts -malign-double... yes
checking whether g++ accepts -xHost... no
checking whether g++ accepts -march=native... yes
checking which architecture to optimize for... i686-pc-linux-gnu (using
-march=native)

Makefiles
---------
configure: creating ./config.status
config.status: creating Makefile
config.status: creating source/base/Makefile
config.status: creating source/backend/Makefile
config.status: creating source/frontend/Makefile
config.status: creating source/Makefile
config.status: creating vfe/Makefile
config.status: creating unix/Makefile
config.status: creating config.h
config.status: executing depfiles commands

========================================================================
POV-Ray 3.7.0.RC7 has been configured.

configure: WARNING: the resulting binary is NOT REDISTRIBUTABLE.

Built-in features:
  I/O restrictions:          disabled
  X Window display:          disabled [it should be "using X11" -- as megapov
does on compile]
  Supported image formats:   gif tga iff ppm pgm hdr png jpeg openexr
  Unsupported image formats: tiff

Compilation settings:
  Build architecture:  i686-pc-linux-gnu
  Built/Optimized for: i686-pc-linux-gnu (using -march=native)
  Compiler vendor:     gnu
  Compiler version:    g++ 4.7
  Compiler flags:      -Wno-multichar -Wno-write-strings -fno-enforce-eh-specs
-s -O3 -ffast-math -malign-double -march=native -pthread

Type 'make check' to build the program and run a test render.
Type 'make install' to install POV-Ray on your system.

The POV-Ray components will be installed in the following directories:
  Program (executable):       /usr/local/bin
  System configuration files: /usr/local/etc/povray/3.7
  User configuration files:   /home/zebulon/.povray/3.7
  Standard include files:     /usr/local/share/povray-3.7/include
  Standard INI files:         /usr/local/share/povray-3.7/ini
  Standard demo scene files:  /usr/local/share/povray-3.7/scenes
  Documentation (text, HTML): /usr/local/share/doc/povray-3.7
  Unix man page:              /usr/local/share/man
========================================================================

Is there a way, solution, to have a display preview back ? Or to have the use of
jpeg with sdl working well ?

Cheers,
zebulon.


Post a reply to this message

From: zebulon
Subject: Re: 3.7RC7 compilation in Debian 7 (wheezy)
Date: 12 May 2013 15:35:01
Message: <web.518fee481e3740a88a72e8240@news.povray.org>
More infos,

If I compile as usual (+ libtiff4, libjpeg8, lbsdl1.2), configure seems ok :

$ ./configure --enable-watch-cursor --disable-pipe --disable-io-restrictions
COMPILED_BY='...'

=======================================================================
Configure POV-Ray version 3.7.0.RC7
=======================================================================

This is an unofficial version compiled by:
 ...
The POV-Ray Team(tm) is not responsible for supporting this version.

Environment
-----------
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
/bin/bash: /home/zebulon/Sources/Povray: No such file or directory
configure: WARNING: `missing' script is too old or missing
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether $C_INCLUDE_PATH contains the "." path... no
checking whether $CPLUS_INCLUDE_PATH contains the "." path... no

Programs
--------
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for stdlib.h... (cached) yes
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking whether the g++ compiler works... yes
checking how to run the C++ preprocessor... g++ -E
checking for C++ compiler vendor... gnu
checking for g++ version... 4.7
checking for ranlib... ranlib

Libraries
---------
checking whether to link with cygwin DLL... no
checking whether to enable static linking... no
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... no
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking if more special flags are required for pthreads... no
checking for boostlib >= 1.37... yes
checking whether the Boost::Thread library is available... yes
checking for exit in -lboost_thread-mt... yes
checking whether the boost thread library is usable... yes
checking for sin in -lmkl... no
checking for sin in -lm... yes
checking for clock_gettime in -lrt... yes
checking whether to use the ZLIB library... yes
checking for library containing zlibVersion... -lz
checking zlib.h usability... yes
checking zlib.h presence... yes
checking for zlib.h... yes
checking for libz version >= 1.2.1... 1.2.7, ok
checking whether to use the PNG library... yes
checking for library containing png_get_libpng_ver... -lpng
checking png.h usability... yes
checking png.h presence... yes
checking for png.h... yes
checking for libpng version >= 1.2.5... 1.2.49, ok
checking whether to use the JPEG library... yes
checking for library containing jpeg_std_error... -ljpeg
checking jpeglib.h usability... yes
checking jpeglib.h presence... yes
checking for jpeglib.h... yes
checking for libjpeg version >= 6b (62)... 80, ok
checking whether to use the TIFF library... yes
checking for library containing TIFFGetVersion... -ltiff
checking tiffio.h usability... yes
checking tiffio.h presence... yes
checking for tiffio.h... yes
checking for libtiff version >= 3.6.1... 3.9.6, ok
checking whether to use the OpenEXR library... yes
checking for pkg-config... pkg-config
checking for OpenEXR's pkg-config... yes
checking for OpenEXR version >= 1.2... 1.6.1, ok
checking OpenEXR/ImfCRgbaFile.h usability... yes
checking OpenEXR/ImfCRgbaFile.h presence... yes
checking for OpenEXR/ImfCRgbaFile.h... yes
checking for ImfInputReadPixels in -lIlmImf... yes
checking for X... libraries /usr/lib, headers /usr/include
checking whether -R must be followed by a space... neither works
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... no
checking X11/Xlib.h usability... yes
checking X11/Xlib.h presence... yes
checking for X11/Xlib.h... yes
checking for XFlush in -lX11... yes
checking X11/xpm.h usability... yes
checking X11/xpm.h presence... yes
checking for X11/xpm.h... yes
checking for XpmCreatePixmapFromData in -lXpm... yes
checking whether to enable the watch cursor... yes
checking X11/cursorfont.h usability... yes
checking X11/cursorfont.h presence... yes
checking for X11/cursorfont.h... yes
checking for XCreateFontCursor... yes
checking for sdl-config... sdl-config
checking for libSDL... yes
checking for libSDL version >= 1.2... 1.2.15, ok
checking SDL/SDL.h usability... yes
checking SDL/SDL.h presence... yes
checking for SDL/SDL.h... yes
checking for SDL_Quit in -lSDL... yes

Language constructs and functions
---------------------------------
checking whether time.h and sys/time.h may both be included... yes
checking time.h usability... yes
checking time.h presence... yes
checking for time.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking sys/resource.h usability... yes
checking sys/resource.h presence... yes
checking for sys/resource.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking for size_t... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking size of int... 4
checking size of long int... 4
checking size of size_t... 4
checking size of float... 4
checking for working memcmp... yes
checking for vsnprintf... yes
checking for getcwd... yes
checking for nanosleep... yes
checking for clock_gettime... yes
checking for getrusage... yes
checking for gettimeofday... yes
checking for asinh... yes

Compiling
---------
checking whether to enable pipes for communications... no
checking whether g++ accepts -Wno-multichar... yes
checking whether g++ accepts -Wno-write-strings... yes
checking whether g++ accepts -fno-enforce-eh-specs... yes
checking whether to enable I/O restrictions... no
checking whether to enable debugging... no
checking whether to enable profiling... no
checking whether to enable stripping... yes
checking whether g++ accepts -s... yes
checking whether to enable optimizations... yes
checking whether g++ accepts -O3... yes
checking whether g++ accepts -ffast-math... yes
checking whether to enable architecture-specific optimizations... yes
checking whether g++ accepts -malign-double... yes
checking whether g++ accepts -xHost... no
checking whether g++ accepts -march=native... yes
checking which architecture to optimize for... i686-pc-linux-gnu (using
-march=native)

Makefiles
---------
configure: creating ./config.status
config.status: creating Makefile
config.status: creating source/base/Makefile
config.status: creating source/backend/Makefile
config.status: creating source/frontend/Makefile
config.status: creating source/Makefile
config.status: creating vfe/Makefile
config.status: creating unix/Makefile
config.status: creating config.h
config.status: executing depfiles commands

=======================================================================
POV-Ray 3.7.0.RC7 has been configured.

Built-in features:
  I/O restrictions:          disabled
  X Window display:          enabled (using SDL)
  Supported image formats:   gif tga iff ppm pgm hdr png jpeg tiff openexr
  Unsupported image formats: -

Compilation settings:
  Build architecture:  i686-pc-linux-gnu
  Built/Optimized for: i686-pc-linux-gnu (using -march=native)
  Compiler vendor:     gnu
  Compiler version:    g++ 4.7
  Compiler flags:      -Wno-multichar -Wno-write-strings -fno-enforce-eh-specs
-s -O3 -ffast-math -malign-double -march=native -pthread

Type 'make check' to build the program and run a test render.
Type 'make install' to install POV-Ray on your system.

The POV-Ray components will be installed in the following directories:
  Program (executable):       /usr/local/bin
  System configuration files: /usr/local/etc/povray/3.7
  User configuration files:   /home/zebulon/.povray/3.7
  Standard include files:     /usr/local/share/povray-3.7/include
  Standard INI files:         /usr/local/share/povray-3.7/ini
  Standard demo scene files:  /usr/local/share/povray-3.7/scenes
  Documentation (text, HTML): /usr/local/share/doc/povray-3.7
  Unix man page:              /usr/local/share/man
=======================================================================

All seems ok, let's build the program (I'll 'make check' manually later, to
force jpeg output (+fj +o/tmp/test.jpg)):

$ make ; echo $?
....
0 # means all done ok, no error returned from make.


Let's have a test with jpeg output forced in /tmp

$ ./unix/povray +i./scenes/advanced/biscuit.pov -f +d +p +v +w320 +h240 +a0.3
+L./include +fj +o/tmp/test.jpg
....
Image Output Options
  Image resolution.....320 by 240 (rows 1 to 240, columns 1 to 320).
  Output file........../tmp/test.jpg, 24 bpp, quality 85% JPEG
  Graphic display......On  (gamma: sRGB)
....
----------------------------------------------------------------------------
Render Time:
  Photon Time:      No photons
  Radiosity Time:   No radiosity
JPEG parameter struct mismatch: library thinks size is 428, caller expects 432
JPEG parameter struct mismatch: library thinks size is 428, caller expects 432
  Trace Time:       0 hours  0 minutes  1 seconds (1.754 seconds)
              using 3 thread(s) with 4.975 CPU-seconds total
Render failed

Here is where povray fails: image preview is shown well and computed, but povray
fails on jpeg file creation (from the .pov-state file)


So,
1) I can use jpeg, but without preview display and without tiff support
2) I can't use jpeg, but everything else is available.

At the moment, I use method 2 (no jpeg), so I just transform jpeg input files I
should use to another format (eg png)

Cheers,
zebulon.

PS: I have a similar problem when I compile megapov (1.2.1, generic linux
sources): I can use X output, but using jpeg fail the same than povray.


Post a reply to this message

From: zebulon
Subject: Re: 3.7RC7 compilation in Debian 7 (wheezy)
Date: 14 May 2013 08:00:01
Message: <web.519227181e3740a8bbea48010@news.povray.org>
Hi,

A bit more infos (about megapov compilation, in previous PS)

It's possible to have megapov compiled good, by removing lib{tiff,png,jpeg)-dev
from installed packges. So, megapov will use it's own embedded libraries. I did
it, and it works fine.

So, I have a new question: Is it possible to compile povray 3.7RC7 using these
libs ? (or, said differently), how to embed the megapov tiff/jpeg/png libs in
povray sources ?

Cheers,
zebulon.


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.