Archived

This forum has been archived. Please start a new discussion on GitHub.

MacOS 10.3 compile issues

I'm trying to port a client Ice app to MacOSX 10.3.9 (running inside
pearpc). I'm not traditionally a Mac developer.


System setup:

Mac version: 10.3.9
xcode 1.5
november2004gccupdater_7k579 (same behaviour before update)
Ice version 2.1.0

I've installed the Ice-mac binaries. I'm having trouble getting
anything to compile that includes <Ice/Ice.h>. Including the
demos.

$uname -a
Darwin sa.local 7.9.0 Darwin Kernel Version 7.9.0: Wed Mar 30 20:11:17 PST 2005; root:xnu/xnu-517.12.7.obj~1/RELEASE_PPC  Power Macintosh powerpc

$c++ --version
c++ (GCC) 3.3 20030304 (Apple Computer, Inc. build 1666)
Copyright (C) 2002 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$pwd
/Users/stuart/Ice-2.1.0-demos/demo/Ice/hello

$make
c++ -c -I. -I/usr/include  -g -ftemplate-depth-128 -Wall -D_REENTRANT Hello.cpp
In file included from /usr/include/gcc/darwin/3.3/c++/iosfwd:46,
                 from /usr/include/gcc/darwin/3.3/c++/ios:44,
                 from /usr/include/gcc/darwin/3.3/c++/ostream:45,
                 from /usr/include/gcc/darwin/3.3/c++/iostream:45,
                 from /usr/include/IceUtil/Config.h:143,
                 from /usr/include/IceUtil/Exception.h:13,
                 from /usr/include/IceUtil/Handle.h:13,
                 from /usr/include/Ice/Handle.h:13,
                 from /usr/include/Ice/LocalObjectF.h:13,
                 from Hello.h:16,
                 from Hello.cpp:13:
/usr/include/gcc/darwin/3.3/c++/ppc-darwin/bits/c++locale.h:57: error: template 
   with C linkage
In file included from /usr/include/gcc/darwin/3.3/c++/iosfwd:48,
                 from /usr/include/gcc/darwin/3.3/c++/ios:44,
                 from /usr/include/gcc/darwin/3.3/c++/ostream:45,
                 from /usr/include/gcc/darwin/3.3/c++/iostream:45,
                 from /usr/include/IceUtil/Config.h:143,
                 from /usr/include/IceUtil/Exception.h:13,
                 from /usr/include/IceUtil/Handle.h:13,
                 from /usr/include/Ice/Handle.h:13,
                 from /usr/include/Ice/LocalObjectF.h:13,
                 from Hello.h:16,
                 from Hello.cpp:13:
/usr/include/gcc/darwin/3.3/c++/bits/stringfwd.h:49: error: template with C 
   linkage
/usr/include/gcc/darwin/3.3/c++/bits/stringfwd.h:52: error: template with C 
   linkage
/usr/include/gcc/darwin/3.3/c++/bits/stringfwd.h:56: error: template with C 
   linkage
... snip ...

Similar behaviour with 2.95, 3.1. I'm not familiar enough with
gcc-mac to work this one out. Any hints?

Regards

Stuart

Comments

  • benoit
    benoit Rennes, France
    I suspect this is caused by Ice being installed in /usr/include. After a bit of search on Google, I found this post: http://lists.apple.com/archives/unix-porting/2004/May/msg00068.html. It appears that gcc automatically adds extern "C" for some header files. Can you try to move Ice to /opt/Ice-2.1.0 for example and see if this solves the problem?

    Benoit.
  • Benoit,

    You are correct. Thankyou very much!

    Another example of great support from ZeroC :)

    Regards

    Stuart