FreeCAD 0.17 32bit was compiled failed in Windows

Having trouble installing or compiling FreeCAD? Get help here.
JOE_FU
Posts: 14
Joined: Fri Jan 11, 2019 8:41 am

FreeCAD 0.17 32bit was compiled failed in Windows

Postby JOE_FU » Sat Jan 19, 2019 2:01 am

I used FreeCAD 0.17 64-bit before, but I want to use FreeCAD0.17 32-bit now, but I can't compiled it, and I can't parse external commands.

Code: Select all

Creating library E:/FreeCAD32/build_17/lib/Debug/DriverSTL_d.lib and object E:/FreeCAD32/build_17/lib/Debug/DriverSTL_d.exp
37> DriverSTL_R_SMDS_Mesh.obj: Error LNK2001: Unresolved external symbol "public:virtual class opencascade :: handle <class Standard_Type> const&__thiscall Standard_Transient:: DynamicType(void)const"(?DynamicType @ Standard_Transient @@ UBEABV?$ handle @VStandard_Type @@@ opencascade @@ XZ)
37> DriverSTL_W_SMDS_Mesh.obj: error LNK2001: unresolved external symbol?? "Public: virtual class opencascade :: handle <class Standard_Type> const & __ thiscall Standard_Transient :: DynamicType (void) const" (DynamicType @ Standard_Transient @@ UBEABV $ handle @VStandard_Type @@@ opencascade @@ XZ)
37> DriverSTL_R_SMDS_Mesh.obj: Error LNK2019: Unresolved external symbol "public:void __thiscall Standard_Transient::IncrementRefCounter(void)const"(?IncrementRefCounter @ Standard_Transient @@ QBEXXZ), the symbol in the function "private:void __thiscall opencascade :: Handle <class NCollection_BaseAllocator> :: BeginScope(void)" (?BeginScope @?$ handle @ VNCollection_BaseAllocator @@@ opencascade @@ AAEXXZ) is referenced
37> DriverSTL_W_SMDS_Mesh.obj: Error LNK2001: Unresolved external symbol "public:void __thiscall Standard_Transient::IncrementRefCounter(void)const"(?IncrementRefCounter @ Standard_Transient @@ QBEXXZ)
37> DriverSTL_R_SMDS_Mesh.obj: Error LNK2019: Unresolved external symbol "public:int __thiscall Standard_Transient::DecreationRefCounter(void)const"(?DecrementRefCounter @ Standard_Transient @@ QBEHXZ), the symbol in the function "private:void __thiscall opencascade :: Handle <class NCollection_BaseAllocator> :: EndScope(void)" (?EndScope @?$ handle @ VNCollection_BaseAllocator @@@ opencascade @@ AAEXXZ) is referenced
37> DriverSTL_W_SMDS_Mesh.obj: Error LNK2001: Unresolved external symbol "public:int __thiscall Standard_Transient::DecrementRefCounter(void)const"(?DecrementRefCounter @ Standard_Transient @@ QBEHXZ)
37> DriverSTL_R_SMDS_Mesh.obj: Error LNK2019: unresolved external symbol "public: static class Standard_Type * __cdecl Standard_Type :: Register (char const *, char const *, unsigned int, class opencascade :: handle <class Standard_Type> const &)" (?Register @ Standard_Type @@ SAPAV1 @ PBD0IABV?$ handle @ VStandard_Type @@@ opencascade @@@ Z), the symbol is in the function "public:static class opencascade :: handle <class Standard_Type> const&__cdecl opencascade :: type_instance <class Standard_ConstructionError referenced> :: get (void) "(? get @? $ type_instance @ VStandard_ConstructionError @@@ opencascade @@ SAABV? $ handle @ VStandard_Type @@@ 2 @ XZ) in
37> DriverSTL_W_SMDS_Mesh.obj: Error LNK2001: unresolved external symbol "public: static class Standard_Type * __cdecl Standard_Type :: Register (char const *, char const *, unsigned int, class opencascade :: handle <class Standard_Type> const &)" (?Register @ Standard_Type @@ SAPAV1 @ PBD0IABV?$ handle @ VStandard_Type @@@ opencascade @@@ Z)
37> DriverSTL_R_SMDS_Mesh.obj: Error LNK2019: Unresolved external symbol "public:virtual __thiscall Standard_Failure::~Standard_Failure(void)"(?? 1Standard_Failure @@ UAE @ XZ), the symbol in the function "public:virtual __thiscall Standard_DomainError: :~Standard_DomainError(void)" (?? 1Standard_DomainError @@ UAE @ XZ) is referenced
37> DriverSTL_W_SMDS_Mesh.obj: Error LNK2001: Unresolved external symbol "public:virtual __thiscall Standard_Failure::~Standard_Failure(void)"(?? 1Standard_Failure @@ UAE @ XZ)
37> DriverSTL_R_SMDS_Mesh.obj: Error LNK2001: Unresolved external symbol "public:virtual char const * __thiscall Standard_Failure :: GetMessageString(void)const"(?GetMessageString @ Standard_Failure @@ UBEPBDXZ)
37> DriverSTL_W_SMDS_Mesh.obj: Error LNK2001: Unresolved external symbol "public:virtual char const * __thiscall Standard_Failure :: GetMessageString(void)const"(?GetMessageString @ Standard_Failure @@ UBEPBDXZ)
37> DriverSTL_R_SMDS_Mesh.obj: Error LNK2001: Unresolved external symbol "public:virtual void __thiscall Standard_Failure::SetMessageString(char const * const)"(?SetMessageString @ Standard_Failure @@ UAEXQBD @ Z)
37> DriverSTL_W_SMDS_Mesh.obj: Error LNK2001: Unresolved external symbol "public:virtual void __thiscall Standard_Failure::SetMessageString(char const * const)"(?SetMessageString @ Standard_Failure @@ UAEXQBD @ Z)
37> DriverSTL_R_SMDS_Mesh.obj: error LNK2019: unresolved external symbol?? "Public: static class opencascade :: handle <class NCollection_BaseAllocator> const & __ cdecl NCollection_BaseAllocator :: CommonBaseAllocator (void)" (CommonBaseAllocator @ NCollection_BaseAllocator @@ SAABV $ handle @ VNCollection_BaseAllocator @ @@ opencascade @@ XZ), the symbol in the function "protected: __ thiscall NCollection_BaseMap :: NCollection_BaseMap (int, unsigned int, class opencascade :: handle <class NCollection_BaseAllocator> const &)" (?? 0NCollection_BaseMap @@ IAE @HIABV $? Referenced in handle @ VNCollection_BaseAllocator @@@ opencascade @@@ Z)
37> DriverSTL_R_SMDS_Mesh.obj: Error LNK2019: Unresolved external symbol "protected:unsigned int __thiscall NCollection_BaseMap :: BeginResize(int,int&,class NCollection_ListNode * *&,class NCollection_ListNode * *&)const"(?BeginResize @ NCollection_BaseMap @ @ IBEIHAAHAAPAPAVNCollection_ListNode @@ 1 @ Z), the symbol is in the function "public:void __thiscall NCollection_DataMap <class gp_Pnt,class SMDS_MeshNode *,struct`s anonymous namespace':: Hasher> ::ReSize(int)"(?ReSize @?$ NCollection_DataMap @ Vgp_Pnt @@ PAVSMDS_MeshNode @@ UHasher @?A0xd0548417 @@@@ QAEXH @ Z)
37> DriverSTL_R_SMDS_Mesh.obj: Error LNK2019: Unresolved external symbol "pro
...
Creating library E:/FreeCAD32/build_17/lib/Debug/SMESHDS_d.lib and object E:/FreeCAD32/build_17/lib/Debug/SMESHDS_d.exp
4>E:\FreeCAD32\FreeCAD-0.17\src\zipios++\basicentry.cpp(36): warning C4244: “=”: Convert from “std::streamoff” to “int”, data may be lost
36>SMESHDS_GroupOnGeom.obj : error LNK2001: Unresolved external symbol "public: virtual class opencascade::handle<class Standard_Type> const & __thiscall Standard_Transient::DynamicType(void)const " (?DynamicType@Standard_Transient@@UBEABV?$handle @VStandard_Type@@@opencascade@@XZ)
36>SMESHDS_Mesh.obj : error LNK2001: Unresolved external symbol "public: virtual class opencascade::handle<class Standard_Type> const & __thiscall Standard_Transient::DynamicType(void)const " (?DynamicType@Standard_Transient@@UBEABV?$handle @VStandard_Type@@@opencascade@@XZ)
36>SMESHDS_SubMesh.obj : error LNK2001: Unresolved external symbol "public: virtual class opencascade::handle<class Standard_Type> const & __thiscall Standard_Transient::DynamicType(void)const " (?DynamicType@Standard_Transient@@UBEABV?$handle @VStandard_Type@@@opencascade@@XZ)
36>SMESHDS_Document.obj : error LNK2001: Unresolved external symbol "public: virtual class opencascade::handle<class Standard_Type> const & __thiscall Standard_Transient::DynamicType(void)const " (?DynamicType@Standard_Transient@@UBEABV?$handle @VStandard_Type@@@opencascade@@XZ)
36>SMESHDS_Group.obj : error LNK2001: Unresolved external symbol "public: virtual class opencascade::handle<class Standard_Type> const & __thiscall Standard_Transient::DynamicType(void)const " (?DynamicType@Standard_Transient@@UBEABV?$handle @VStandard_Type@@@opencascade@@XZ)
36>SMESHDS_GroupBase.obj : error LNK2001: Unresolved external symbol "public: virtual class opencascade::handle<class Standard_Type> const & __thiscall Standard_Transient::DynamicType(void)const " (?DynamicType@Standard_Transient@@UBEABV?$handle @VStandard_Type@@@opencascade@@XZ)
36>SMESHDS_GroupOnFilter.obj : error LNK2019: Unresolved external symbol "public: virtual class opencascade::handle<class Standard_Type> const & __thiscall Standard_Transient::DynamicType(void)const " (?DynamicType@Standard_Transient@@UBEABV?$handle @VStandard_Type@@@opencascade@@XZ), the symbol in the function "public: void __thiscall std::list<class SMESHDS_Hypothesis const *, class std::allocator<class SMESHDS_Hypothesis const *> >::_Incsize(unsigned int)" (?_Incsize@?$list@PBVSMESHDS_Hypothesis@@V?$allocator@PBVSMESHDS_Hypothesis@@@std@@@std@@QAEXI@Z)
36>SMESHDS_GroupOnGeom.obj : error LNK2019: Unresolved external symbol "public: void __thiscall Standard_Transient::IncrementRefCounter(void)const " (?IncrementRefCounter@Standard_Transient@@QBEXXZ), the symbol is in the function __unwindfunclet$??1TopoDS_Shape@@ Quoted in QAE@XZ$0
36>SMESHDS_Mesh.obj : error LNK2001: Unresolved external symbol "public: void __thiscall Standard_Transient::IncrementRefCounter(void)const " (?IncrementRefCounter@Standard_Transient@@QBEXXZ)
36>SMESHDS_SubMesh.obj : error LNK2001: Unresolved external symbol "public: void __thiscall Standard_Transient::IncrementRefCounter(void)const " (?IncrementRefCounter@Standard_Transient@@QBEXXZ)
36>SMESHDS_Document.obj : error LNK2001: Unresolved external symbol "public: void __thiscall Standard_Transient::IncrementRefCounter(void)const " (?IncrementRefCounter@Standard_Transient@@QBEXXZ)
36>SMESHDS_Group.obj : error LNK2001: Unresolved external symbol "public: void __thiscall Standard_Transient::IncrementRefCounter(void)const " (?IncrementRefCounter@Standard_Transient@@QBEXXZ)
36>SMESHDS_GroupBase.obj : error LNK2001: Unresolved external symbol "public: void __thiscall Standard_Transient::IncrementRefCounter(void)const " (?IncrementRefCounter@Standard_Transient@@QBEXXZ)
36>SMESHDS_GroupOnFilter.obj : error LNK2001: Unresolved external symbol "public: void __thiscall Standard_Transient::IncrementRefCounter(void)const " (?IncrementRefCounter@Standard_Transient@@QBEXXZ)
36>SMESHDS_GroupOnGeom.obj : error LNK2001: Unresolved external symbol "public: int __thiscall Standard_Transient::DecrementRefCounter(void)const " (?DecrementRefCounter@Standard_Transient@@QBEHXZ)
36>SMESHDS_Mesh.obj : error LNK2001: Unresolved external symbol "public: int __thiscall Standard_Transient::DecrementRefCounter(void)const " (?DecrementRefCounter@Standard_Transient@@QBEHXZ)
36>SMESHDS_SubMesh.obj : error LNK2001: Unresolved external symbol "public: int __thiscall Standard_Transient::DecrementRefCounter(void)const " (?DecrementRefCounter@Standard_Transient@@QBEHXZ)
36>SMESHDS_Document.obj : error LNK2019: Unresolved external symbol "public: int __thiscall Standard_Transient::DecrementRefCounter(void)const " (?DecrementRefCounter@Standard_Transient@@QBEHXZ), the symbol in the function "private: void __thiscall opencascade:: Referenced in handle<class NCollection_BaseAllocator>::EndScope(void)" (?EndScope@?$handle@VNCollection_BaseAllocator@@@opencascade@@AAEXXZ)
36>SMESHDS_Group.obj : error LNK2001: Unresolved external symbol "public: int __thiscall Standard_Transient::DecrementRefCounter(void)const " (?DecrementRefCounter@Standard_Transient@@QBEHXZ)
36>SMESHDS_GroupBase.obj : error LNK2001: Unresolved external symbol "public: int __thiscall Standard_Transient::DecrementRefCounter(void)const " (?DecrementRefCounter@Standard_Transient@@QBEHXZ)
36>SMESHDS_GroupOnFilter.obj : error LNK2001: Unresolved external symbol "public: int __thiscall Standard_Transient::DecrementRefCounter(void)const " (?Decr
...
There are many similar mistakes. Do you know how to solve them? Maybe someone can help me or provide me with some FreeCAD0.17 32bit compiled source code and libraries.
I am looking forward to your reply.
wandererfan
Posts: 2250
Joined: Tue Nov 06, 2012 5:42 pm

Re: FreeCAD 0.17 32bit was compiled failed in Windows

Postby wandererfan » Sat Jan 19, 2019 2:04 pm

Did you try building without the FEM & FEM_NETGEN modules? All the errors seem to be SMESH related, and AFAIK FEM is where SMESH is used.
JOE_FU
Posts: 14
Joined: Fri Jan 11, 2019 8:41 am

Re: FreeCAD 0.17 32bit was compiled failed in Windows

Postby JOE_FU » Tue Jan 22, 2019 2:36 am

wandererfan wrote:
Sat Jan 19, 2019 2:04 pm
Did you try building without the FEM & FEM_NETGEN modules? All the errors seem to be SMESH related, and AFAIK FEM is where SMESH is used.
Not only these errors, but also some similar mistakes are not put up.
wmayer
Site Admin
Posts: 13612
Joined: Thu Feb 19, 2009 10:32 am

Re: FreeCAD 0.17 32bit was compiled failed in Windows

Postby wmayer » Tue Jan 22, 2019 10:01 am

The errors you get are linker errors. So, the compilation actually worked. Are you sure you use the 32-bit version of the OCCT libraries?
JOE_FU
Posts: 14
Joined: Fri Jan 11, 2019 8:41 am

Re: FreeCAD 0.17 32bit was compiled failed in Windows

Postby JOE_FU » Wed Jan 23, 2019 2:42 am

wmayer wrote:
Tue Jan 22, 2019 10:01 am
The errors you get are linker errors. So, the compilation actually worked. Are you sure you use the 32-bit version of the OCCT libraries?
I downloaded the libraries in the link below.
https://github.com/FreeCAD/FreeCAD-ports-cache/releases
Maybe you can give me your correct download link.Thank you.
wmayer
Site Admin
Posts: 13612
Joined: Thu Feb 19, 2009 10:32 am

Re: FreeCAD 0.17 32bit was compiled failed in Windows

Postby wmayer » Wed Jan 23, 2019 10:29 am

The 32-bit version is offered with https://github.com/FreeCAD/FreeCAD-port ... 86_VC12.7z
And note that you also must use Visual Studio 2013, using a newer version won't work.
User avatar
sgrogan
Posts: 4681
Joined: Wed Oct 22, 2014 5:02 pm

Re: FreeCAD 0.17 32bit was compiled failed in Windows

Postby sgrogan » Thu Jan 24, 2019 12:00 am

JOE_FU wrote:
Wed Jan 23, 2019 2:42 am
I downloaded the libraries in the link below.
There are no debug libs for occt or vtk in the Libpack :oops:
A release build should work.