Go Back   ZeroC Forums > Help Center

Reply
 
LinkBack Thread Tools Rate Thread Display Modes
  #1 (permalink)  
Old 12-17-2005
umber umber is offline
Registered User
 
 
Join Date: Nov 2004
Posts: 9
Ice3 compiling error with gcc 4.1.0

Hello, Ice developers,

I understand that gcc 4.x is not supported right now. I tried to fix the problem myself, but with no luck with my limited C++ experience. So I posted the error message here in the hope that you may come up with some quick fix or some suggestions.

I am using Fedora Core development branch. 'gcc -v' displays information as below:
Using built-in specs.
Target: i386-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-libgcj-multifile --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --host=i386-redhat-linux
Thread model: posix
gcc version 4.1.0 20051214 (Red Hat 4.1.0-0.9)

The error message is:

making all in src
make[1]: Entering directory `/home/gyang/tmp/Ice-3.0.0/src'
making all in IceUtil
make[2]: Entering directory `/home/gyang/tmp/Ice-3.0.0/src/IceUtil'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/gyang/tmp/Ice-3.0.0/src/IceUtil'
making all in icecpp
make[2]: Entering directory `/home/gyang/tmp/Ice-3.0.0/src/icecpp'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/gyang/tmp/Ice-3.0.0/src/icecpp'
making all in Slice
make[2]: Entering directory `/home/gyang/tmp/Ice-3.0.0/src/Slice'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/gyang/tmp/Ice-3.0.0/src/Slice'
making all in slice2cpp
make[2]: Entering directory `/home/gyang/tmp/Ice-3.0.0/src/slice2cpp'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/gyang/tmp/Ice-3.0.0/src/slice2cpp'
making all in slice2cs
make[2]: Entering directory `/home/gyang/tmp/Ice-3.0.0/src/slice2cs'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/gyang/tmp/Ice-3.0.0/src/slice2cs'
making all in slice2vb
make[2]: Entering directory `/home/gyang/tmp/Ice-3.0.0/src/slice2vb'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/gyang/tmp/Ice-3.0.0/src/slice2vb'
making all in slice2freeze
make[2]: Entering directory `/home/gyang/tmp/Ice-3.0.0/src/slice2freeze'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/gyang/tmp/Ice-3.0.0/src/slice2freeze'
making all in slice2freezej
make[2]: Entering directory `/home/gyang/tmp/Ice-3.0.0/src/slice2freezej'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/gyang/tmp/Ice-3.0.0/src/slice2freezej'
making all in slice2docbook
make[2]: Entering directory `/home/gyang/tmp/Ice-3.0.0/src/slice2docbook'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/gyang/tmp/Ice-3.0.0/src/slice2docbook'
making all in slice2java
make[2]: Entering directory `/home/gyang/tmp/Ice-3.0.0/src/slice2java'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/gyang/tmp/Ice-3.0.0/src/slice2java'
making all in slice2py
make[2]: Entering directory `/home/gyang/tmp/Ice-3.0.0/src/slice2py'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/gyang/tmp/Ice-3.0.0/src/slice2py'
making all in Ice
make[2]: Entering directory `/home/gyang/tmp/Ice-3.0.0/src/Ice'
c++ -c -I.. -I../../include -DICE_API_EXPORTS -ftemplate-depth-128 -Wall -D_REENTRANT -fPIC -g CommunicatorI.cpp
../../include/Ice/ProxyHandle.h: In destructor ‘IceInternal::ProxyHandle<T>::~ProxyHandle() [with T = IceProxy::Ice::Router]’:
CommunicatorI.cpp:198: instantiated from here
../../include/Ice/ProxyHandle.h:172: error: no matching function for call to ‘decRef(IceProxy::Ice::Router*&)’
../../include/Ice/DynamicLibraryF.h:20: note: candidates are: void IceInternal::decRef(IceInternal:ynamicLibrary*)
../../include/Ice/DynamicLibraryF.h:25: note: void IceInternal::decRef(IceInternal:ynamicLibraryLis t*)
../../include/Ice/LocalObjectF.h:26: note: void IceInternal::decRef(Ice::LocalObject*)
../../include/Ice/ProxyF.h:68: note: void IceInternal::decRef(IceProxy::Ice::Object*)
../../include/Ice/ProxyF.h:71: note: void IceInternal::decRef(IceDelegate::Ice::Object*)
../../include/Ice/ProxyF.h:74: note: void IceInternal::decRef(IceDelegateM::Ice::Object*)
../../include/Ice/ProxyF.h:77: note: void IceInternal::decRef(IceDelegateD::Ice::Object*)
../../include/Ice/ProxyHandle.h: In copy constructor ‘IceInternal::ProxyHandle<T>::ProxyHandle(const IceInternal::ProxyHandle<T>&) [with T = IceProxy::Ice::Router]’:
CommunicatorI.cpp:198: instantiated from here
../../include/Ice/ProxyHandle.h:164: error: no matching function for call to ‘incRef(IceProxy::Ice::Router*&)’
../../include/Ice/DynamicLibraryF.h:19: note: candidates are: void IceInternal::incRef(IceInternal:ynamicLibrary*)
../../include/Ice/DynamicLibraryF.h:24: note: void IceInternal::incRef(IceInternal:ynamicLibraryLis t*)
../../include/Ice/LocalObjectF.h:25: note: void IceInternal::incRef(Ice::LocalObject*)
../../include/Ice/ProxyF.h:67: note: void IceInternal::incRef(IceProxy::Ice::Object*)
../../include/Ice/ProxyF.h:70: note: void IceInternal::incRef(IceDelegate::Ice::Object*)
../../include/Ice/ProxyF.h:73: note: void IceInternal::incRef(IceDelegateM::Ice::Object*)
../../include/Ice/ProxyF.h:76: note: void IceInternal::incRef(IceDelegateD::Ice::Object*)
make[2]: *** [CommunicatorI.o] Error 1
make[2]: Leaving directory `/home/gyang/tmp/Ice-3.0.0/src/Ice'
make[1]: *** [all] Error 1
make[1]: Leaving directory `/home/gyang/tmp/Ice-3.0.0/src'
make: *** [all] Error 1

I found that there is a declaration of

IceInternal::decRef(IceProxy::Ice::Router*)

in Proxy.h.

But I can not understand why it is not found by the compiler. Is this a problem of Ice or a problem of the compiler?

Thanks,
Guo
__________________
Guo Yang
New Jersey Institute of Technology
http://solar.njit.edu/
Reply With Quote
  #2 (permalink)  
Old 12-17-2005
umber umber is offline
Registered User
 
 
Join Date: Nov 2004
Posts: 9
And may I ask another basic question here about the "CommunicatorI.cpp"?

I saw that there is a include statement at the beginning of the file
#include <Ice/CommunicatorI.h>

Since Communicator.h is at the same directory with CommunicatorI.cpp, not in the ../../include. As my understanding, usually it will be included as "CommunicatorI.h".

Is there any specific reason it is included in the former form? Thanks.
__________________
Guo Yang
New Jersey Institute of Technology
http://solar.njit.edu/
Reply With Quote
  #3 (permalink)  
Old 12-17-2005
marc's Avatar
marc marc is offline
ZeroC Staff
 
Name: Marc Laukien
Organization: ZeroC, Inc.
Project: The Internet Communications Engine
 
Join Date: Feb 2003
Location: Florida
Posts: 1,781
I'm afraid we can't help with the GCC 4.1 problem. We have not tested Ice with GCC 4.1 yet (it is not yet a supported compiler). If you have a commercial need for using Ice with this compiler, please contact us at info@zeroc.com.

We include all C++ header files prefixed with "Ice/", because this makes it easier to move files from private to public or vice versa, should the need arise. In any case, this is purely an internal coding style issue, and has no impact on applications that use Ice.
Reply With Quote
Reply



Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
Ice-3.1 error compiling generated file xdm Help Center 3 07-14-2006 12:20 AM
Error compiling Freeze Anhur Help Center 2 06-06-2006 04:39 AM
Compiling Ice-3 error orphean Help Center 13 01-10-2006 07:04 AM
Compile Ice3.0 error on Fedora 4 rc_hz Help Center 4 12-01-2005 01:26 AM
Compiling Ice-1.5.1 on FreeBSD5.3Beta5 error liguoqiang Bug Reports 1 10-22-2004 12:14 PM


All times are GMT -4. The time now is 07:20 PM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.0.0
(c) 2008 ZeroC, Inc.