Debian sid Build

Having trouble installing or compiling FreeCAD? Get help here.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
mrlukeparry
Posts: 655
Joined: Fri Jul 22, 2011 8:37 pm
Contact:

Re: [REOPEN] Debian sid Build

Post by mrlukeparry »

Got same problem with OpenSUSE 12.1 which I think has GCC 4.6 too

Adding those includes still doesn't help solve the compiler error.
User avatar
tanderson69
Veteran
Posts: 1626
Joined: Thu Feb 18, 2010 1:07 am

Re: [REOPEN] Debian sid Build

Post by tanderson69 »

I too, am getting this error on Kubuntu 12.04. The documentation for OCCT 6.3 says that STEPCAFControl_Writer has 2 methods for ::Writer. One returns a const reference and the other returns a non-const reference. In STEPCAFControl_Writer.hxx I see only one method and it returns a const reference(oce 0.8). Perhaps the non-const form was removed at some point? ....... Ah I see it. The non-const form got changed to STEPCAFControl_Writer::changeWriter();

Edit:
changed

Code: Select all

APIHeaderSection_MakeHeader makeHeader(writer.Writer().Model());
To

Code: Select all

APIHeaderSection_MakeHeader makeHeader(writer.ChangeWriter().Model());
And build succeeded.
wmayer
Founder
Posts: 20243
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: [REOPEN] Debian sid Build

Post by wmayer »

OK, this explains it. Since the method "Model()" is non-const the instance of STEPControl_Writer must be non-const, too. But due to the API change in OCC there is only one method "Writer()" which returns the const version. Then it's clear why it doesn't compile.
User avatar
flachyjoe
Veteran
Posts: 1869
Joined: Sat Mar 31, 2012 12:00 pm
Location: Limoges, France

Re: [REOPEN] Debian sid Build

Post by flachyjoe »

Thank you !
I mark resolved.
- Flachy Joe -
Image
User avatar
flachyjoe
Veteran
Posts: 1869
Joined: Sat Mar 31, 2012 12:00 pm
Location: Limoges, France

Re: Debian sid Build

Post by flachyjoe »

A patch to build with libcoin80 (3.1.4) :
In src/Gui/SoTextLabel.cpp
line 58 change #include <Inventor/elements/SoGLTexture3EnabledElement.h> to #include <Inventor/elements/SoMultiTextureEnabledElement.h>
line 254 change SoGLTexture3EnabledElement::set(state, this, FALSE); to SoMultiTextureEnabledElement::set(state, this, FALSE);

Enjoy !
- Flachy Joe -
Image
pinniped
Posts: 17
Joined: Mon Jun 04, 2012 11:51 pm

Re: Debian sid Build

Post by pinniped »

Thanks Joe, That deprecation error prevented me from building and I just didn't have time to look into it at all.
Post Reply