[MacPorts] #31762: enblend @4.0.3 compilation error with llvm/Xcode 4.2
MacPorts
noreply at macports.org
Tue Oct 25 17:02:53 PDT 2011
#31762: enblend @4.0.3 compilation error with llvm/Xcode 4.2
----------------------------------------+-----------------------------------
Reporter: philippe.bernery@… | Owner: ryandesign@…
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version: 2.0.3
Keywords: haspatch | Port: enblend
----------------------------------------+-----------------------------------
Changes (by ryandesign@…):
* status: new => assigned
* cc: hvdwolf@… (added)
* owner: macports-tickets@… => ryandesign@…
* keywords: => haspatch
* port: => enblend
Old description:
> Enblend is not compiling with llvm (comes with Xcode 4.2).
>
> As suggested in the mailing list, I changed the compiler to llvm-gcc and
> it works. I use this command line to compile enblend:
>
> sudo port install enblend configure.compiler=llvm-gcc-4.2
>
> Here is an extract of the error that happened before the compiler change:
>
> /Developer/usr/bin/clang++ -DHAVE_CONFIG_H -I. -I..
> -I/opt/local/include -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -I../include
> -DVIGRA_STATIC_LIB -D_THREAD_SAFE -I/opt/local/include/OpenEXR -pipe
> -O2 -arch x86_64 --param inline-unit-growth=60 -O2 -DNDEBUG -Wall -MT
> enfuse-enfuse.o -MD -MP -MF .deps/enfuse-enfuse.Tpo -c -o enfuse-enfuse.o
> `test -f 'enfuse.cc' || echo './'`enfuse.cc
> clang: warning: argument unused during compilation: '--param inline-unit-
> growth=60'
> In file included from enblend.cc:67:
> /opt/local/include/lcms.h:1418:14: warning: comparison of unsigned
> expression < 0 is always false [-Wtautological-compare]
> if (size < 0) return NULL; // Prevent signed size_t
> exploits
> ~~~~ ^ ~
> In file included from enfuse.cc:67:
> /opt/local/include/lcms.h:1418:14: warning: comparison of unsigned
> expression < 0 is always false [-Wtautological-compare]
> if (size < 0) return NULL; // Prevent signed size_t
> exploits
> ~~~~ ^ ~
> In file included from enfuse.cc:137:
> In file included from ./enfuse.h:37:
> In file included from ./numerictraits.h:28:
> ../include/vigra/cachedfileimage.hxx:560:22: error: elaborated type
> refers to a typedef
> friend class Notify::self_type;
>
> ...
>
> In file included from enblend.cc:149:
> In file included from ./enblend.h:40:
> In file included from ./mask.h:37:
> ./anneal.h:669:19: error: read-only variable is not assignable
> uaNum *= -1;
> ~~~~~ ^
> ./anneal.h:670:19: error: read-only variable is not assignable
> ubNum *= -1;
> ~~~~~ ^
> ./anneal.h:671:19: error: read-only variable is not assignable
> denom *= -1;
> ~~~~~ ^
>
> ...
>
> ../include/vigra/cachedfileimage.hxx:761:11: error: 'setNotify' is a
> protected member of
> 'vigra::cfi_detail::NotifyingDirectionSelector<vigra::UnstridedArrayTag,
> int,
> vigra::CachedFileImageIteratorBase<vigra::CachedFileImageIterator<unsigned
> char>, vigra::CachedFileImage<unsigned char>, unsigned char, unsigned
> char &, unsigned char *, vigra::UnstridedArrayTag> >'
> y.setNotify(this);
> ^
> ../include/vigra/cachedfileimage.hxx:568:10: note: declared protected
> here
> void setNotify(Notify *n) { notify_ = n; }
> ^
> ../include/vigra/cachedfileimage.hxx:760:89: error: field of type 'MoveY'
> (aka 'NotifyingDirectionSelector<vigra::UnstridedArrayTag, int,
> self_type>') has protected default constructor
> CachedFileImageIteratorBase(const int X, const int Y, image_type *
> const I) : x(X), y(Y), i(I), currentRow(NULL) {
>
> ...
New description:
Enblend is not compiling with llvm (comes with Xcode 4.2).
As suggested in the mailing list, I changed the compiler to llvm-gcc and
it works. I use this command line to compile enblend:
{{{
sudo port install enblend configure.compiler=llvm-gcc-4.2
}}}
Here is an extract of the error that happened before the compiler change:
{{{
/Developer/usr/bin/clang++ -DHAVE_CONFIG_H -I. -I.. -I/opt/local/include
-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -I../include -DVIGRA_STATIC_LIB
-D_THREAD_SAFE -I/opt/local/include/OpenEXR -pipe -O2 -arch x86_64
--param inline-unit-growth=60 -O2 -DNDEBUG -Wall -MT enfuse-enfuse.o -MD
-MP -MF .deps/enfuse-enfuse.Tpo -c -o enfuse-enfuse.o `test -f 'enfuse.cc'
|| echo './'`enfuse.cc
clang: warning: argument unused during compilation: '--param inline-unit-
growth=60'
In file included from enblend.cc:67:
/opt/local/include/lcms.h:1418:14: warning: comparison of unsigned
expression < 0 is always false [-Wtautological-compare]
if (size < 0) return NULL; // Prevent signed size_t
exploits
~~~~ ^ ~
In file included from enfuse.cc:67:
/opt/local/include/lcms.h:1418:14: warning: comparison of unsigned
expression < 0 is always false [-Wtautological-compare]
if (size < 0) return NULL; // Prevent signed size_t
exploits
~~~~ ^ ~
In file included from enfuse.cc:137:
In file included from ./enfuse.h:37:
In file included from ./numerictraits.h:28:
../include/vigra/cachedfileimage.hxx:560:22: error: elaborated type refers
to a typedef
friend class Notify::self_type;
...
In file included from enblend.cc:149:
In file included from ./enblend.h:40:
In file included from ./mask.h:37:
./anneal.h:669:19: error: read-only variable is not assignable
uaNum *= -1;
~~~~~ ^
./anneal.h:670:19: error: read-only variable is not assignable
ubNum *= -1;
~~~~~ ^
./anneal.h:671:19: error: read-only variable is not assignable
denom *= -1;
~~~~~ ^
...
../include/vigra/cachedfileimage.hxx:761:11: error: 'setNotify' is a
protected member of
'vigra::cfi_detail::NotifyingDirectionSelector<vigra::UnstridedArrayTag,
int,
vigra::CachedFileImageIteratorBase<vigra::CachedFileImageIterator<unsigned
char>, vigra::CachedFileImage<unsigned char>, unsigned char, unsigned char
&, unsigned char *, vigra::UnstridedArrayTag> >'
y.setNotify(this);
^
../include/vigra/cachedfileimage.hxx:568:10: note: declared protected here
void setNotify(Notify *n) { notify_ = n; }
^
../include/vigra/cachedfileimage.hxx:760:89: error: field of type 'MoveY'
(aka 'NotifyingDirectionSelector<vigra::UnstridedArrayTag, int,
self_type>') has protected default constructor
CachedFileImageIteratorBase(const int X, const int Y, image_type *
const I) : x(X), y(Y), i(I), currentRow(NULL) {
...
}}}
--
Comment:
Please use WikiFormatting, fill in the Portfield, and Cc the maintainer of
that port.
> Enblend is not compiling with llvm (comes with Xcode 4.2).
I guess you mean clang, which is the default compiler on Xcode 4.2.
--
Ticket URL: <https://trac.macports.org/ticket/31762#comment:1>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list