Bernd Markgraf schrieb: > On Tue, 2006-10-24 at 02:48 -0700, Damien Carbery wrote: >> I've never tried but post a few bits of the error logs > /opt/SUNWspro/bin/CC -g -I. -c basicio.cpp -KPIC -DPIC > -o .libs/basicio.o > "types.hpp", line 369: Error: An integer constant expression is required > within the array subscript operator.
It is hard to say what causes this without seeing the array declaration (and the declaration(s) of identifiers used for defining the dimensions). > "basicio.cpp", line 85: Error: Formal argument 1 of type char* in call > to munmap(char*, unsigned) is being passed unsigned char*. Simplest solution: use a cast for the argument. Better yet, check where that incompatibility comes from. Usually munmap takes a void*, evem on Solaris. Do you have some extra POSIX-compatibility options on? > "basicio.cpp", line 136: Error: Cannot assign > std::auto_ptr<Exiv2::FileIo> to std::auto_ptr<Exiv2::BasicIo> without > "std::auto_ptr<Exiv2::BasicIo>::operator=(const > std::auto_ptr<Exiv2::BasicIo>&)";. > IIRC the default standard C++ library of the Sun C++ Compiler does not support member templates (for backward compatibility reasons). The conversion between different auto_ptr types requires this feature. If your library needn't be compatible to the default Sun C++ ABI, you can use the stlport library that comes with the compiler instead. It should support this. Otherwise if that line contains an auto_ptr assignment foo = bar; you can make that foo = bar.release(); or foo.reset( bar.release() ); which should work. > I think line 85 is fixed. types.hpp and line 136 are giving me > headaches... > >> or links to the sources and I'll give it a try. > http://www.exiv2.org/download.html > >> Is exiv2 in Solaris? > unfortunately not... > > maybe I should learn more about C++ 8-) > This is all I can say without taking the extra time to get the code :-o HTH - J?rg
