[desktop-discuss] Re: Latest MPlayer

Darren Kenny Darren.Kenny at Sun.COM
Thu Jul 6 04:21:29 PDT 2006


Hi Brian,

Brian Cameron wrote:
> Doug:
> 
> Not sure if this will help, but after getting various things written
> in C++ to work with Sun Studio CC compiler, I'll share a few things
> to look for that seem to often cause problems.
> 
> Note that Sun Studio C++ compiler is more picky about fully declaring
> class names.  So in GCC you can get away with using Classname() instaed
> of Parent:Classname().  Sun Studio generates a lot of strange error
> messages when you don't fully qualify since it doesn't know the
> relationships between classes that GCC figures out.  I'd recommend
> looking into this.

I would think this is more likely a fault in the headers / declarations - i.e. 
there is some ambiguity in there. GCC tends to be more tolerant of these things 
than most other compilers - which is good in some cases, but bad if you're 
trying to compile the same code using a compiler that's more "by the book".

> 
> Also, setting CXXFLAGS as follows:
> 
> "export CXXFLAGS="-lCrun -lCstd"

True, but you shouldn't have to do this if LD defined to be CC rather than 
/usr/bin/ld since CC does this automatically.

> 
> Often makes Sun Studio a lot happier.

Yep, but it's this weirdness that makes people prefer not to use C++ - not to 
mention the name-mangling that goes on in the libraries which tend to be 
incompatible between compilers :(

Darren.

> 
> Brian
> 
> 
>>>> This all came from an attempt to build inkscape,
>>>> which IMHO should be shipped wherever the
>>>> GIMP is shipped.  I had it working on build 40
>>>> by linking against blastwave packages, but the
>>>> current JDS components don't seem very
>>>> cooperative.
>>> If you get inkscape to build I'd be happy to include
>>> the spec file in our svn repository.
>>> A while back I made a few attempts to get it to build.
>>
>> I have tried to compile it against Sun Studio C++ and hit the compile 
>> errors below. Unless somebody can interpret this C++ error for me, I 
>> will have to compile it with g++, and this will include all of the 
>> other C++ libraries it uses.
>>
>> Maybe we need to install g++ libraries (somewhere) as well as Sun 
>> Studio C++, so we can build apps, that will not build with the Sun 
>> compilers.
>>
>> Doug
>> P.S. I hate C++
>>
>> pkgbuild: /opt/SUNWspro/bin/CC -DHAVE_CONFIG_H -I. -I. -I..   
>> -I/usr/sfw/include/freetype2 -I/usr/sfw/include  -D_REENTRANT 
>> -D_PTHREADS -DORBIT2=1 -I/usr/include/gnome-vfs-2.0 
>> -I/usr/lib/gnome-vfs-2.0/include -I/usr/include/bonobo-activation-2.0 
>> -I/usr/include/libbonobo-2.0 -I/usr/include/gconf/2 
>> -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include 
>> -I/usr/include/orbit-2.0    -I/usr/openwin/include 
>> -I/usr/sfw/include/freetype2 -I/usr/sfw/include   
>> -DPOTRACE=\"potrace\" -D_REENTRANT -D_PTHREADS 
>> -I/usr/include/gdkmm-2.4 -I/usr/lib/gdkmm-2.4/include 
>> -I/usr/include/glibmm-2.4 -I/usr/lib/glibmm-2.4/include 
>> -I/usr/include/pangomm-1.4 -I/usr/include/gtk-2.0 
>> -I/usr/lib/gtk-2.0/include -I/usr/include/sigc++-2.0 
>> -I/usr/lib/sigc++-2.0/include -I/usr/include/glib-2.0 
>> -I/usr/lib/glib-2.0/include -I/usr/include/pango-1.0 
>> -I../../cairo-1.0.2/src -I/usr/include/cairo -I/usr/include/gtkmm-2.4 
>> -I/usr/lib/gtkmm-2.4/include -I/usr/include/atkmm-1.6 
>> -I/usr/include/atk-1.0 -I/usr/include/libxml2 
> -I/usr/include/gtkspell-2.0   -I../cxxtest    -i -xO3 -xspace 
> -xarch=sse2a -mr -norunpath
>> -xregs=no%frameptr -features=extensions -c -o conn-avoid-ref.o 
>> conn-avoid-ref.cpp
>>
>> pkgbuild: "./util/list.h", line 91: Error: "friend" declaration is 
>> incompatible with function template.
>> pkgbuild: "./util/list.h", line 122:     Where: While specializing 
>> "Inkscape::Util::List<const 
>> Inkscape::XML::CompositeNodeObserver::ObserverRecord>".
>> pkgbuild: "./util/list.h", line 122:     Where: Specialized in 
>> Inkscape::Util::List<Inkscape::XML::CompositeNodeObserver::ObserverRecord>. 
>>
>> pkgbuild: "./util/list-container.h", line 82:     Where: Specialized 
>> in 
>> Inkscape::Util::ListContainer<Inkscape::XML::CompositeNodeObserver::ObserverRecord>. 
>>
>>  
>>  
>> This message posted from opensolaris.org
>> _______________________________________________
>> desktop-discuss mailing list
>> desktop-discuss at opensolaris.org
> 
> _______________________________________________
> desktop-discuss mailing list
> desktop-discuss at opensolaris.org



More information about the desktop-discuss mailing list