[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Openexr-devel] Couple of minor things...
From: |
darby johnston |
Subject: |
[Openexr-devel] Couple of minor things... |
Date: |
Thu, 21 Sep 2006 11:13:42 -0700 (PDT) |
Hi,
Found a couple minor things while using your excellent
library:
ImfStandardAttributes.h, line 146:
IMF_STD_ATTRIBUTE_DEF (utcOffset, utcOffset, float)
The second argument should probably be capitalized to
match the style of the rest of the standard
attributes:
IMF_STD_ATTRIBUTE_DEF (utcOffset, UtcOffset, float)
Also, it looks like the document
"ReadingAndWritingImageFiles.pdf" is slightly out of
sync with the current code; in section "3.5 Which
Channels are in a File?", the example uses iterators
like:
for (ChannelList::ConstIterator i =
channels.begin(); i != channels.end(); ++i)
{
const Channel &channel = i->second;
// ...
}
But the iterators have changed their access methods,
so the above should read:
for (ChannelList::ConstIterator i =
channels.begin(); i != channels.end(); ++i)
{
const Channel &channel = i.channel();
// ...
}
When compiling OpenEXR under Solaris 10 6/06 with Sun
Studio 11, I got an error about missing math symbols:
CC -G -zdefs -hlibImath.so.4 -o
.libs/libImath.so.4.0.0 .libs/ImathShear.o
.libs/ImathMatrixAlgo.o .libs/ImathVec.o
.libs/ImathColorAlgo.o .libs/ImathFun.o
.libs/ImathBox.o .libs/ImathRandom.o
-R/home/darby/pkg/tmp/openexr-1.4.0/Iex/.libs
-R/home/darby/pkg/tmp/lib ../Iex/.libs/libIex.so
-lposix4 -lpthread -lCstd -lCrun -lc
Undefined first referenced
symbol in file
floor
.libs/ImathColorAlgo.o (symbol belongs to implicit
dependency /lib/libm.so.2)
sqrtf .libs/ImathVec.o
(symbol belongs to implicit dependency
/lib/libm.so.2)
ld: fatal: Symbol referencing errors. No output
written to .libs/libImath.so.4.0.0
Apparently this is caused by the "-zdefs" flag. From
Sun's docs:
The link-editors -z defs option can be used to
force a fatal error if any undefined symbols
remain. This option is recommended when creating any
shared objects. Shared objects that reference symbols
from an application can use the -z defs option,
together with defining the symbols by using an
extern mapfile directive.
Solaris isn't listed in your supported platforms, but
maybe it would be easy enough to add a "-lm" to the
configure?
Thanks, Darby
- [Openexr-devel] Couple of minor things...,
darby johnston <=