[SOLVED] FC compilation fails with OCCT 7.6.0 beta.

Having trouble installing or compiling FreeCAD? Get help here.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
wmayer
Founder
Posts: 20306
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: [SOLVED] FC compilation fails with OCCT 7.6.0 beta.

Post by wmayer »

wmayer wrote: Thu Oct 21, 2021 6:34 am Yes and no. At least we can avoid to call the execute() function if only one curve has been selected because the algorithm will fail anyway.
git commit ee311b0835
user1234
Veteran
Posts: 3496
Joined: Mon Jul 11, 2016 5:08 pm

Re: [SOLVED] FC compilation fails with OCCT 7.6.0 beta.

Post by user1234 »

Hello!

Now the OCCT7.6.0 seem te be finished, see here. I compiled (with make clean before) it and make a very short test with that. Rotating and padding works. But when i open FreeCAD i get error messages:

Err: libTKV3d.so.7: cannot open shared object file: No such file or directory

and

Err: libTKCAF.so.7: cannot open shared object file: No such file or directory

. In the logs are more information:

Code: Select all

.....
Log: Loading GUI of Drawing module... done
Log: Draft workbench deactivated.
Wrn: Drawing became obsolete in 0.17; consider using TechDraw instead.
Err: libTKV3d.so.7: cannot open shared object file: No such file or directory
Log: Traceback (most recent call last):
  File "<string>", line 72, in Initialize
  File "/usr/lib/python3/dist-packages/shiboken2/files.dir/shibokensupport/__feature__.py", line 142, in _import
    return original_import(name, *args, **kwargs)

.....

Code: Select all

.....
Log: Loading GUI of Surface module... done
Err: libTKCAF.so.7: cannot open shared object file: No such file or directory
Log: Traceback (most recent call last):
  File "<string>", line 41, in Initialize
  File "/usr/lib/python3/dist-packages/shiboken2/files.dir/shibokensupport/__feature__.py", line 142, in _import
    return original_import(name, *args, **kwargs)

.....
Tomorrow i have more to do with FreeCAD and test more.

Greetings
user1234
wmayer
Founder
Posts: 20306
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: [SOLVED] FC compilation fails with OCCT 7.6.0 beta.

Post by wmayer »

libTKCAF.so.7 is loaded when you import the Import or ImportGui module. So maybe you should run ldd Import.so to see if you get more information this way.
user1234
Veteran
Posts: 3496
Joined: Mon Jul 11, 2016 5:08 pm

Re: [SOLVED] FC compilation fails with OCCT 7.6.0 beta.

Post by user1234 »

Code: Select all

	linux-vdso.so.1 (0x00007ffe227bf000)
	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f13358da000)
	Part.so => /home/grubertechnic/Programs/FreeCADmaster/Mod/Part/Part.so (0x00007f13350d3000)
	libTKXDESTEP.so.7 => /usr/local/lib/libTKXDESTEP.so.7 (0x00007f1335010000)
	libTKXDEIGES.so.7 => /usr/local/lib/libTKXDEIGES.so.7 (0x00007f1334ff2000)
	libFreeCADApp.so => /home/grubertechnic/Programs/FreeCADmaster/lib/libFreeCADApp.so (0x00007f133402f000)
	libFreeCADBase.so => /home/grubertechnic/Programs/FreeCADmaster/lib/libFreeCADBase.so (0x00007f1333d6a000)
	libxerces-c-3.2.so => /lib/x86_64-linux-gnu/libxerces-c-3.2.so (0x00007f13339ce000)
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f133388a000)
	libpython3.9.so.1.0 => /lib/x86_64-linux-gnu/libpython3.9.so.1.0 (0x00007f13332ff000)
	libQt5Core.so.5 => /lib/x86_64-linux-gnu/libQt5Core.so.5 (0x00007f1332db4000)
	libTKSTEP.so.7 => /usr/local/lib/libTKSTEP.so.7 (0x00007f1332a28000)
	libTKIGES.so.7 => /usr/local/lib/libTKIGES.so.7 (0x00007f133263c000)
	libTKXSBase.so.7 => /usr/local/lib/libTKXSBase.so.7 (0x00007f133238a000)
	libTKXCAF.so.7 => /usr/local/lib/libTKXCAF.so.7 (0x00007f1332295000)
	libTKLCAF.so.7 => /usr/local/lib/libTKLCAF.so.7 (0x00007f13321a0000)
	libTKTopAlgo.so.7 => /usr/local/lib/libTKTopAlgo.so.7 (0x00007f1331eaf000)
	libTKGeomAlgo.so.7 => /usr/local/lib/libTKGeomAlgo.so.7 (0x00007f13319a3000)
	libTKBRep.so.7 => /usr/local/lib/libTKBRep.so.7 (0x00007f1331877000)
	libTKGeomBase.so.7 => /usr/local/lib/libTKGeomBase.so.7 (0x00007f1331394000)
	libTKG3d.so.7 => /usr/local/lib/libTKG3d.so.7 (0x00007f1331270000)
	libTKMath.so.7 => /usr/local/lib/libTKMath.so.7 (0x00007f1330fea000)
	libTKernel.so.7 => /usr/local/lib/libTKernel.so.7 (0x00007f1330dff000)
	libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f1330c32000)
	libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f1330c16000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f1330a51000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f1335b03000)
	libTKMesh.so.7 => /usr/local/lib/libTKMesh.so.7 (0x00007f1330941000)
	libTKSTL.so.7 => /usr/local/lib/libTKSTL.so.7 (0x00007f1330925000)
	libTKOffset.so.7 => /usr/local/lib/libTKOffset.so.7 (0x00007f1330778000)
	libTKHLR.so.7 => /usr/local/lib/libTKHLR.so.7 (0x00007f1330653000)
	libTKFeat.so.7 => /usr/local/lib/libTKFeat.so.7 (0x00007f1330529000)
	libfreetype.so.6 => /usr/local/lib/libfreetype.so.6 (0x00007f1330466000)
	libTKFillet.so.7 => /usr/local/lib/libTKFillet.so.7 (0x00007f13301db000)
	libTKSTEPAttr.so.7 => /usr/local/lib/libTKSTEPAttr.so.7 (0x00007f133001e000)
	libTKSTEP209.so.7 => /usr/local/lib/libTKSTEP209.so.7 (0x00007f132ff78000)
	libTKSTEPBase.so.7 => /usr/local/lib/libTKSTEPBase.so.7 (0x00007f132fcea000)
	libTKBool.so.7 => /usr/local/lib/libTKBool.so.7 (0x00007f132f8d1000)
	libTKBO.so.7 => /usr/local/lib/libTKBO.so.7 (0x00007f132f5fe000)
	libTKShHealing.so.7 => /usr/local/lib/libTKShHealing.so.7 (0x00007f132f363000)
	libTKPrim.so.7 => /usr/local/lib/libTKPrim.so.7 (0x00007f132f300000)
	libTKG2d.so.7 => /usr/local/lib/libTKG2d.so.7 (0x00007f132f2a3000)
	libTKCAF.so.7 => not found
	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f132f29b000)
	libboost_filesystem.so.1.74.0 => /lib/x86_64-linux-gnu/libboost_filesystem.so.1.74.0 (0x00007f132f279000)
	libboost_program_options.so.1.74.0 => /lib/x86_64-linux-gnu/libboost_program_options.so.1.74.0 (0x00007f132f20b000)
	libboost_regex.so.1.74.0 => /lib/x86_64-linux-gnu/libboost_regex.so.1.74.0 (0x00007f132f0ee000)
	libQt5Xml.so.5 => /lib/x86_64-linux-gnu/libQt5Xml.so.5 (0x00007f132f0aa000)
	libzipios.so.0 => /lib/x86_64-linux-gnu/libzipios.so.0 (0x00007f132f077000)
	libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f132f05a000)
	libcurl-gnutls.so.4 => /lib/x86_64-linux-gnu/libcurl-gnutls.so.4 (0x00007f132efc2000)
	libicuuc.so.67 => /lib/x86_64-linux-gnu/libicuuc.so.67 (0x00007f132edd9000)
	libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f132edaa000)
	libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007f132eda3000)
	libdouble-conversion.so.3 => /lib/x86_64-linux-gnu/libdouble-conversion.so.3 (0x00007f132ed8c000)
	libicui18n.so.67 => /lib/x86_64-linux-gnu/libicui18n.so.67 (0x00007f132ea86000)
	libpcre2-16.so.0 => /lib/x86_64-linux-gnu/libpcre2-16.so.0 (0x00007f132e9fc000)
	libzstd.so.1 => /lib/x86_64-linux-gnu/libzstd.so.1 (0x00007f132e921000)
	libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f132e7f2000)
	libTKVCAF.so.7 => not found
	libTKV3d.so.7 => not found
	libTKService.so.7 => not found
	libTKCAF.so.7 => not found
	libTKCDF.so.7 => not found
	libTKCDF.so.7 => not found
	libtbb.so.2 => /lib/x86_64-linux-gnu/libtbb.so.2 (0x00007f132e7a9000)
	libtbbmalloc.so.2 => /lib/x86_64-linux-gnu/libtbbmalloc.so.2 (0x00007f132e766000)
	libpng16.so.16 => /lib/x86_64-linux-gnu/libpng16.so.16 (0x00007f132e72c000)
	libbrotlidec.so.1 => /lib/x86_64-linux-gnu/libbrotlidec.so.1 (0x00007f132e71c000)
	libnghttp2.so.14 => /lib/x86_64-linux-gnu/libnghttp2.so.14 (0x00007f132e6ef000)
	libidn2.so.0 => /lib/x86_64-linux-gnu/libidn2.so.0 (0x00007f132e6ce000)
	librtmp.so.1 => /lib/x86_64-linux-gnu/librtmp.so.1 (0x00007f132e6af000)
	libssh2.so.1 => /lib/x86_64-linux-gnu/libssh2.so.1 (0x00007f132e678000)
	libpsl.so.5 => /lib/x86_64-linux-gnu/libpsl.so.5 (0x00007f132e664000)
	libnettle.so.8 => /lib/x86_64-linux-gnu/libnettle.so.8 (0x00007f132e61c000)
	libgnutls.so.30 => /lib/x86_64-linux-gnu/libgnutls.so.30 (0x00007f132e41c000)
	libgssapi_krb5.so.2 => /lib/x86_64-linux-gnu/libgssapi_krb5.so.2 (0x00007f132e3c9000)
	libldap_r-2.4.so.2 => /lib/x86_64-linux-gnu/libldap_r-2.4.so.2 (0x00007f132e373000)
	liblber-2.4.so.2 => /lib/x86_64-linux-gnu/liblber-2.4.so.2 (0x00007f132e360000)
	libicudata.so.67 => /lib/x86_64-linux-gnu/libicudata.so.67 (0x00007f132c847000)
	libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f132c7d4000)
	libbrotlicommon.so.1 => /lib/x86_64-linux-gnu/libbrotlicommon.so.1 (0x00007f132c7b1000)
	libunistring.so.2 => /lib/x86_64-linux-gnu/libunistring.so.2 (0x00007f132c62f000)
	libhogweed.so.6 => /lib/x86_64-linux-gnu/libhogweed.so.6 (0x00007f132c5e4000)
	libgmp.so.10 => /lib/x86_64-linux-gnu/libgmp.so.10 (0x00007f132c563000)
	libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 (0x00007f132c443000)
	libp11-kit.so.0 => /lib/x86_64-linux-gnu/libp11-kit.so.0 (0x00007f132c30f000)
	libtasn1.so.6 => /lib/x86_64-linux-gnu/libtasn1.so.6 (0x00007f132c2f9000)
	libkrb5.so.3 => /lib/x86_64-linux-gnu/libkrb5.so.3 (0x00007f132c21d000)
	libk5crypto.so.3 => /lib/x86_64-linux-gnu/libk5crypto.so.3 (0x00007f132c1ed000)
	libcom_err.so.2 => /lib/x86_64-linux-gnu/libcom_err.so.2 (0x00007f132c1e7000)
	libkrb5support.so.0 => /lib/x86_64-linux-gnu/libkrb5support.so.0 (0x00007f132c1d8000)
	libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007f132c1be000)
	libsasl2.so.2 => /lib/x86_64-linux-gnu/libsasl2.so.2 (0x00007f132c1a1000)
	libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x00007f132c179000)
	libffi.so.7 => /lib/x86_64-linux-gnu/libffi.so.7 (0x00007f132c16d000)
	libkeyutils.so.1 => /lib/x86_64-linux-gnu/libkeyutils.so.1 (0x00007f132c166000)
Interesting, because i have definitely installed the missing files. I must recompile it and test it again, maybe i did something wrong. Maybe the ccache of the OCCT itself spit something in my soup.

Definitivly a command which i have to remember. Thanks for helping!

Greetings
user1234
wmayer
Founder
Posts: 20306
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: [SOLVED] FC compilation fails with OCCT 7.6.0 beta.

Post by wmayer »

When looking at other OCC libs like libTKXDESTEP.so.7 it finds them in /usr/local/lib. Is this the path where you have installed the compiled OCC 7.6?
user1234
Veteran
Posts: 3496
Joined: Mon Jul 11, 2016 5:08 pm

Re: [SOLVED] FC compilation fails with OCCT 7.6.0 beta.

Post by user1234 »

Yes, same path. The export works at the moment not, because it finds not the correct shared object. But at first i want at first make all new from the scratch, before i make false alarms.

Greetings
user1234
user1234
Veteran
Posts: 3496
Joined: Mon Jul 11, 2016 5:08 pm

Re: [SOLVED] FC compilation fails with OCCT 7.6.0 beta.

Post by user1234 »

So, now i build all from the scratch, same behavior. It would be interesting, if other early adopter have this issue.

Greetings
user1234
wmayer
Founder
Posts: 20306
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: [SOLVED] FC compilation fails with OCCT 7.6.0 beta.

Post by wmayer »

I have built the final OCCT 7.6 and FreeCAD linking it. When starting FreeCAD from its build directory it works to load the Part and PartDesign module but causes a crash when I try to load the Import module. The reason is that the linker doesn't find some of the shared libraries of OCCT 7.6 and tries to load the older version (7.3) instead. This is because from the installed OCCT all runpath entries are removed from the shared libraries.

When I also install FreeCAD (with make install) then FreeCAD fails to load any of the OCCT libraries. The reason is the same as above because all runpath entries are removed here, too.

In order to make FreeCAD working you must set the environment variable LD_LIBRARY_PATH that points to the directory where the shared libs of OCCT are located.
user1234
Veteran
Posts: 3496
Joined: Mon Jul 11, 2016 5:08 pm

Re: [SOLVED] FC compilation fails with OCCT 7.6.0 beta.

Post by user1234 »

Stupid question: what is the reason why this happen, especially when i wiped OCCT completely before from the computer. Also i can image, when forget to set the flags to install the tk files, then this happen, but i set the flags and installed this, also they are in the correct place. (I also wiped FreeCAD completely and make all new).

Greetings
user1234
wmayer
Founder
Posts: 20306
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: [SOLVED] FC compilation fails with OCCT 7.6.0 beta.

Post by wmayer »

Stupid question: what is the reason why this happen, especially when i wiped OCCT completely before from the computer.
It depends on what directories are listed in the .conf files under /etc/ld.so.conf.d

For more details see: https://unix.stackexchange.com/question ... brary-path
Post Reply