View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0033153 | Open CASCADE | OCCT:Configuration | public | 2022-10-03 18:10 | 2023-03-19 22:35 |
Reporter | Assigned To | ||||
Priority | high | Severity | block | ||
Status | closed | Resolution | fixed | ||
Platform | Windows | OS | VC++ 2022 | ||
Product Version | 7.7.0 | ||||
Target Version | 7.7.0 | Fixed in Version | 7.7.0 | ||
Summary | 0033153: Configuration: Linker error when building from source for VS2022 x64 | ||||
Description | Customer's complaint when testing 7.7.0-beta. I get a linker error when building from source for VS2022 x64: 2>XCAFDoc_Editor.obj : error LNK2019: riferimento al simbolo esterno "public: class opencascade::handle<class XCAFNoteObjects_NoteObject> __cdecl XCAFDoc_Note::GetObject(void)const " (?GetObject@XCAFDoc_Note@@QEBA?AV?$handle@VXCAFNoteObjects_NoteObject@@@opencascade@@XZ) non risolto nella funzione "public: static bool __cdecl XCAFDoc_Editor::RescaleGeometry(class TDF_Label const &,double,bool)" (?RescaleGeometry@XCAFDoc_Editor@@SA_NAEBVTDF_Label@@N_N@Z) I have investigated a bit. It doesn't depend on third parties, but on BUILD_WITH_PCH=ON . Use standard generator, Visual studio 2022, x64, any configuration, -DBUILD_WITH_FREETYPE=OFF -DBUILD_WITH_PCH=ON -DBUILD_Module_Draw=OFF A similar problem is also observed in the TKService and TKOpenGles modules without PCH it works good! The problem is reproduced. Proposed solution: turn off cotire from targets, whose compilation cause error while applying cotire tool: TKService TKOpenGl TKOpenGles TKXCAF TKXDEDRAW TKDFBrowser TKMessageModel TKMessageView TKShapeView TKTInspector TKTreeModel TKVInspector TKView | ||||
Steps To Reproduce | Not required | ||||
Tags | No tags attached. | ||||
Test case number | |||||
related to | 0033162 | new | Open CASCADE | Configuration: Enabling BUILD_WITH_PCH flag causes compilation warnings |
|
Branch CR33153 has been created by ddzama. SHA-1: 42a1ebe614ab1df3188ca922b02d93050bd6d963 Detailed log of new commits: Author: ddzama Date: Fri Oct 7 09:46:27 2022 +0300 f Author: ddzama Date: Thu Oct 6 14:05:08 2022 +0300 0033153: Migrate to cotire 1.8.1 (from 1.7.9). Author: ddzama Date: Thu Oct 6 13:29:08 2022 +0300 0033153: Configuration: Linker error when building from source for VS2022 x64. Linking error occures if applying cotire tool: `` |
|
Branch CR33153 has been updated forcibly by ddzama. SHA-1: 54eddb066cc40f88f17db6f1e638113694348d0d |
|
Branch CR33153 has been updated forcibly by ddzama. SHA-1: 13cebce3d99d889a858c9e03844124659cb66df4 |
|
Branch CR33153 has been updated forcibly by ddzama. SHA-1: 264307ab015f8e91c5b32856ce4763d3931f3d16 |
|
|
|
To integrate: occt - CR33153 products - none |
|
Branch CR33153 has been updated forcibly by ddzama. SHA-1: db5220ce5b2f59287d462698a7218e6905c3e998 |
|
Branch CR33153 has been deleted by mnt. SHA-1: db5220ce5b2f59287d462698a7218e6905c3e998 |
occt: master 3536158f 2022-10-06 13:29:08
Committer: |
0033153: Configuration: Linker error when building from source for VS2022 x64. With enabled flag BUILD_USE_PCH we get an error of compilation of TKService: 1>Image_VideoRecorder.obj : error LNK2019: unresolved external symbol "int __cdecl av_strerror(int,char *,unsigned __int64)" (?av_strerror@@YAHHPEAD_K@Z) referenced in function "protected: class TCollection_AsciiString __cdecl Image_VideoRecorder::formatAvError(int)const " (?formatAvError@Image_VideoRecorder@@IEBA?AVTCollection_AsciiString@@H@Z) 1>Media_FormatContext.obj : error LNK2001: unresolved external symbol "int __cdecl av_strerror(int,char *,unsigned __int64)" (?av_strerror@@YAHHPEAD_K@Z) And many other similar errors. Similar errors occures in some other projects too: TKService TKOpenGl TKOpenGles TKXCAF TKXDEDRAW TKDFBrowser TKMessageModel TKMessageView TKShapeView TKTInspector TKTreeModel TKVInspector TKView Proposed solution: turn off cotire from targets, whose compilation cause error while applying cotire tool. In this ticket migration to cotire 1.8.1 (from 1.7.9) is done. COTIRE_PREFIX_HEADER_IGNORE_PATH does not apply here, because its employing causes some errors in 3rdparty libraries (for example, in TKService project). Projects (TKDFBrowser TKMessageModel TKMessageView TKShapeView TKTInspector TKTreeModel TKVInspector TKView) which use Qt may be proceeded by cotire tool, but after fixing a bug of cotire: https://gitlab.kitware.com/cmake/cmake/-/issues/18353 0033153: Fix cotire bug, causing impossibility of compilation targets depending from Qt. Solution is proposed in: https://gitlab.kitware.com/cmake/cmake/-/issues/18353 |
Affected Issues 0033153 |
|
mod - adm/cmake/cotire.cmake | Diff File | ||
mod - adm/cmake/occt_toolkit.cmake | Diff File | ||
mod - src/TKOpenGl/CMakeLists.txt | Diff File | ||
mod - src/TKOpenGles/CMakeLists.txt | Diff File | ||
mod - src/TKService/CMakeLists.txt | Diff File | ||
mod - src/TKXCAF/CMakeLists.txt | Diff File | ||
mod - src/TKXDEDRAW/CMakeLists.txt | Diff File | ||
mod - tools/TKDFBrowser/CMakeLists.txt | Diff File | ||
mod - tools/TKMessageModel/CMakeLists.txt | Diff File | ||
mod - tools/TKMessageView/CMakeLists.txt | Diff File | ||
mod - tools/TKShapeView/CMakeLists.txt | Diff File | ||
mod - tools/TKTInspector/CMakeLists.txt | Diff File | ||
mod - tools/TKTreeModel/CMakeLists.txt | Diff File | ||
mod - tools/TKView/CMakeLists.txt | Diff File | ||
mod - tools/TKVInspector/CMakeLists.txt | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2022-10-03 18:10 |
|
New Issue | |
2022-10-03 18:10 |
|
Assigned To | => smoskvin |
2022-10-03 18:11 |
|
Status | new => assigned |
2022-10-04 15:29 |
|
Description Updated | |
2022-10-04 15:31 |
|
Description Updated | |
2022-10-04 15:32 |
|
Assigned To | smoskvin => ddzama |
2022-10-04 15:41 |
|
Priority | normal => high |
2022-10-07 09:56 | git | Note Added: 0111424 | |
2022-10-07 10:02 | git | Note Added: 0111425 | |
2022-10-07 10:06 |
|
Description Updated | |
2022-10-07 11:25 | git | Note Added: 0111428 | |
2022-10-07 13:54 | git | Note Added: 0111434 | |
2022-10-07 13:56 |
|
Assigned To | ddzama => msv |
2022-10-07 13:56 |
|
Status | assigned => resolved |
2022-10-07 13:56 |
|
Steps to Reproduce Updated | |
2022-10-07 13:57 |
|
Note Added: 0111435 | |
2022-10-07 14:47 |
|
Assigned To | msv => bugmaster |
2022-10-07 14:47 |
|
Status | resolved => reviewed |
2022-10-07 14:47 |
|
Note Added: 0111437 | |
2022-10-10 00:26 | git | Note Added: 0111445 | |
2022-10-10 10:23 |
|
Relationship added | related to 0033162 |
2022-11-02 13:40 |
|
Status | reviewed => tested |
2022-11-02 13:46 |
|
Changeset attached | => occt master 3536158f |
2022-11-02 13:46 |
|
Assigned To | bugmaster => ddzama |
2022-11-02 13:46 |
|
Status | tested => verified |
2022-11-02 13:46 |
|
Resolution | open => fixed |
2022-11-02 13:53 | git | Note Added: 0111876 | |
2023-03-19 22:35 | vglukhik | Status | verified => closed |
2023-03-19 22:35 | vglukhik | Fixed in Version | => 7.7.0 |