Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 501840

Summary: sci-mathematics/octave-3.8.0 build breaks with stable graphicsmagick (1.3.18)
Product: Gentoo Linux Reporter: François Bissey <frp.bissey>
Component: Current packagesAssignee: Mark Wright <gienah>
Status: RESOLVED DUPLICATE    
Severity: normal    
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: Octave build log

Description François Bissey 2014-02-19 22:28:24 UTC
Building octave against graphicsmagick 1.3.18 breaks with the following error:
dldfcn/__magick_read__.cc: In function 'octave_value_list read_images(std::vector<Magick::Image>&, const Array<int>&, const octave_idx_type&, const octave_scalar_map&)':
dldfcn/__magick_read__.cc:337:15: error: 'QuantumRange' was not declared in this scope
     divisor = QuantumRange / ((uint64_t (1) << imvec[def_elem].depth ()) - 1);
               ^
dldfcn/__magick_read__.cc:470:38: error: 'QuantumRange' was not declared in this scope
                     a_fvec[idx]   = (QuantumRange - pix->opacity) / divisor;
                                      ^
dldfcn/__magick_read__.cc:546:40: error: 'QuantumRange' was not declared in this scope
                     a_fvec[a_idx++] = (QuantumRange - pix->opacity) / divisor;
                                        ^
dldfcn/__magick_read__.cc:629:40: error: 'QuantumRange' was not declared in this scope
                     a_fvec[a_idx++] = (QuantumRange - *apix) / divisor;
                                        ^
dldfcn/__magick_read__.cc: In function 'void maybe_initialize_magick()':
dldfcn/__magick_read__.cc:688:11: error: 'MAGICKCORE_QUANTUM_DEPTH' was not declared in this scope
       if (MAGICKCORE_QUANTUM_DEPTH < 32)
           ^
dldfcn/__magick_read__.cc: In function 'void encode_uint_image(std::vector<Magick::Image>&, const T&, const T&)':
dldfcn/__magick_read__.cc:1065:28: error: 'QuantumRange' was not declared in this scope
                          / QuantumRange;
                            ^
/bin/sh ../libtool  --tag=CXX   --mode=compile x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I..         -I../liboctave/cruft/misc -I../liboctave/array -I../liboctave/numeric -I../liboctave/numeric -I../liboctave/operators -I../liboctave/operators -I../liboctave/system -I../liboctave/util -I./octave-value -I./operators -Iparse-tree -I./parse-tree -Icorefcn -I./corefcn -I../libgnu -I../libgnu   -Wall -W -Wshadow -Wold-style-cast -Wformat -Wpointer-arith -Wwrite-strings -Wcast-align -Wcast-qual -O1 -march=native -pipe -ggdb -pthread -c -o dldfcn/dldfcn_chol_la-chol.lo `test -f 'dldfcn/chol.cc' || echo './'`dldfcn/chol.cc
libtool: compile:  x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I.. -I../liboctave/cruft/misc -I../liboctave/array -I../liboctave/numeric -I../liboctave/numeric -I../liboctave/operators -I../liboctave/operators -I../liboctave/system -I../liboctave/util -I./octave-value -I./operators -Iparse-tree -I./parse-tree -Icorefcn -I./corefcn -I../libgnu -I../libgnu -Wall -W -Wshadow -Wold-style-cast -Wformat -Wpointer-arith -Wwrite-strings -Wcast-align -Wcast-qual -O1 -march=native -pipe -ggdb -pthread -c dldfcn/chol.cc  -fPIC -DPIC -o dldfcn/.libs/dldfcn_chol_la-chol.o
make[3]: *** [dldfcn/dldfcn___magick_read___la-__magick_read__.lo] Error 1
make[3]: *** Waiting for unfinished jobs....

QuantumRange is actually by the patch octave-3.8.0-imagemagick.patch. This patch is applied unconditionally and works if compiling against the latest stable version of imagemagick (6.8.8.5).
Octave 3.8.0 will fail to build if graphicsmagick 1.3.18 is present on the system because the ebuild prefer graphicsmagick over imagemagick if both are installed and the dependency rules allow octave to build against graphicsmagick is imagemagick is not present.

Proposed solution: only apply octave-3.8.0-imagemagick.patch if graphicsmagick is not present.

Reproducible: Always

Steps to Reproduce:
1. Make that graphicmagick-1.3.18 is installed
2. USE="imagemagick" emerge octave
3. BOOM!
Comment 1 François Bissey 2014-02-19 22:32:00 UTC
Created attachment 370822 [details]
Octave build log
Comment 2 Mark Wright gentoo-dev 2014-02-19 23:28:37 UTC
I'm investigating.
Comment 3 François Bissey 2014-02-19 23:50:25 UTC
I haven't tested whether graphicsmagick 1.3.19 (~arch) works.
Comment 4 Jouni Kosonen 2014-02-20 00:09:46 UTC
(In reply to Francois Bissey from comment #3)
> I haven't tested whether graphicsmagick 1.3.19 (~arch) works.

It doesn't, see #501768 comment #2
Comment 5 François Bissey 2014-02-20 00:16:54 UTC
Good old Juergen, strangely I hadn't seen his bug when searching. Otherwise I would have piggybacked on it. I guess one of us is a duplicate.
Comment 6 Mark Wright gentoo-dev 2014-02-20 02:55:44 UTC
Duplicate of 501768 (since 501768 wins the popularity vote by having more people on the cc: list).

*** This bug has been marked as a duplicate of bug 501768 ***