| 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 packages | Assignee: | 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 | ||
Created attachment 370822 [details]
Octave build log
I'm investigating. I haven't tested whether graphicsmagick 1.3.19 (~arch) works. (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 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. 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 *** |
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!