Hi Marco,

The Adv2APPVar related issue is fixed in the latest svn revision. I just 
sorted the headers list before it's written to the SWIG file and it 
seems to solve the problem (tested under Ubuntu 8.04).

The use of 'g++' as the linker should be achieved by properly setting 
the 'CC' and 'CPP' environment variables. Theses settings are automated 
in the 'environment.py' script (lines 75 and 76) and it's strange that 
it doesn't work on your machine. Anyway, pythonOCC uses python distutils 
package for compilation/linking phases. It's certainly not the best 
solution and I plan to move to another build system to enhance 
portability. scons could be a candidate, automake/autoconf as well. Feel 
free to suggest any comment that coud help me to choose the more 
suitable solution (I'm not a Linux build/compilation specialist).

Cheers,

Thomas

M. Nawijn a écrit :
> Hi Thomas,
>
> Thanks for the response. Don't worry about the "exact" error message. It 
> differs
> for different combinations of header files.... I sometimes get an
> error referring to sstream,
> sometimes related to stdlib.h and so on.
>
> If I disable "AdvApp2Var_Wrapper" the SWIG generation phase runs
> without any further problem.
>
> The compilation phase however provides me with additional errors. One
> problem I solved is that the
> compilation phase uses g++ while the linking phase uses gcc. This can
> be solved in two ways:
>     - force the linking phase to also use g++
>     - add 'stdc++' and 'm' (standard c++ and math library
> respectively) to the list of libraries
>
> I used the latter (adding the libraries) and this solved the first
> problem. I would have liked to use the first
> one but don't know how to force this. I tried to set CC, CXX and CPP
> flags (from a bash shell) but this does
> not solve the problem.
>
> The next compilation error I ran into is the following:
>
> g++ -fno-strict-aliasing -DNDEBUG -O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
> --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC
> -fPIC -DHAVE_CONFIG_H -DHAVE_LIMITS_H -DCSFDB -DOCC_CONVERT_SIGNALS
> -DLIN -DLININTEL -D_GNU_SOURCE=1 -I/opt/occ/inc
> -I/usr/include/python2.5 -c
> /home/nawijn/scratch/pythonocc/pythonOCC/src/SWIG_src_modular_linux_darwin/Interface_wrap.c
> -o 
> build/temp.linux-x86_64-2.5/home/nawijn/scratch/pythonocc/pythonOCC/src/SWIG_src_modular_linux_darwin/Interface_wrap.o
> -O0
> /home/nawijn/scratch/pythonocc/pythonOCC/src/SWIG_src_modular_linux_darwin/Interface_wrap.c:
> In constructor ‘swig::PyObject_ptr::PyObject_ptr(PyObject*, bool)’:
> /home/nawijn/scratch/pythonocc/pythonOCC/src/SWIG_src_modular_linux_darwin/Interface_wrap.c:2773:
> warning: suggest explicit braces to avoid ambiguous ‘else’
>
> /home/nawijn/scratch/pythonocc/pythonOCC/src/SWIG_src_modular_linux_darwin/Interface_wrap.c:
> In function ‘PyObject*
> _wrap_Interface_CheckTool_CompleteCheckList(PyObject*, PyObject*)’:
> /home/nawijn/scratch/pythonocc/pythonOCC/src/SWIG_src_modular_linux_darwin/Interface_wrap.c:10390:
> error: aggregate ‘Interface_CheckIterator result’ has incomplete type
> and cannot be defined
>
> This might be a missing include file. It seems that
> "Interface_CheckIterator.hxx" is not in the list of headers of
> "Interface_headers.hxx". I will look into this.
>
> Thanks for your extraordinary work! I will keep you posted!
>
> Marco
>
>
>
> On Fri, Feb 20, 2009 at 5:57 PM,  <thomas.pav...@free.fr> wrote:
>   
>>> This is a follow-up on me previous experience. I did not solve the
>>> problem yet, but narrowed it down to a the following.
>>>
>>> "AdvApp2Var_Wrapper.hxx" includes amongst other files:
>>>
>>>    #include "/opt/occ/inc/AdvApp2Var_ApproxF2var.hxx"
>>>    #include "/opt/occ/inc/AdvApp2Var_ApproxAFunc2Var.hxx"
>>>
>>> If I compile these two individually like this:
>>>
>>>     g++ -I/opt/occ/inc -DHAVE_CONFIG_H -c
>>> /opt/occ/inc/AdvApp2Var_ApproxF2var.hxx -o ~/scratch/test.o
>>>
>>> Everything is fine, no error messages. However the combination of the
>>> 2 include files provides me consistently with the following error:
>>>
>>> In file included from /opt/occ/inc/Standard_PrimitiveTypes.hxx:5,
>>>                 from /opt/occ/inc/Handle_Standard_Transient.hxx:10,
>>>                 from /opt/occ/inc/Handle_MMgt_TShared.hxx:33,
>>>                 from /opt/occ/inc/Handle_TColStd_HArray1OfReal.hxx:33,
>>>                 from /opt/occ/inc/AdvApp2Var_ApproxAFunc2Var.hxx:29,
>>>                 from test.hxx:2:
>>> /usr/include/stdlib.h:699: error: expected unqualified-id before ‘int’
>>> /usr/include/stdlib.h:699: error: expected `)' before ‘int’
>>> /usr/include/stdlib.h:699: error: expected `)' before ‘int’
>>>
>>> I keep digging...
>>>
>>> Marco
>>>       
>> Marco,
>>
>> I have the same error on Ubuntu (GCCXML parsing), but for the line 691 of 
>> 'stdlib.h'. Quite weird...
>>
>> Thomas
>>
>>     
>
>   

_______________________________________________
Pythonocc-users mailing list
Pythonocc-users@gna.org
https://mail.gna.org/listinfo/pythonocc-users

Reply via email to