Use of Halcon interface on Nvidia Jetson Jetpack 6.1

General Information

  • Product: B57-4-BL
  • Ensenso SDK Version: 4.2.1765
  • Operating System: Linux ARM / Jetson with jetpack 6.1

Problem / Question

Hello,

We are unable to use the Halcon interface on Jetson Orin AGX, JetPack 6.1.

We get this error: halcon.ffi.HOperatorError: HALCON error #8603: Interface library not available. Check www.mvtec.com/download for additional interfaces: Error opening library ‘hAcqEnsenso-NxLib.so’: /home/lg/MVTec/HALCON-24.11-Progress-Steady/lib/aarch64-linux/hAcqEnsenso-NxLib.so: undefined symbol: _ZNSt6locale5_Impl19_S_facet_categoriesE.

Jetpack 6.1 uses GLIBCXX_3.4.30 and the command:

objdump -T /lib/aarch64-linux-gnu/libstdc++.so.6 | grep _ZNSt6locale5_Impl19_S_facet_categoriesE

doesn’t return any results, therefore I think that the problem is due to the fact that your library was compiled against an incompatible GLIBCXX_3.4.30 version.

Is there a way to overcome this problem? Would I have a similar issue by using directly the SDK?

Many thanks!

Best regards

Alessandro

Hi Alessandro,

thank you for bringing this to our attention. We have managed to address the problem and will include a fixed version of hAcqEnsenso-NxLib.so in an upcoming 4.2 bugfix release.

The old Halcon 13 libhalconcpp.so we link against when building exports the symbol _ZNSt6locale5_Impl19_S_facet_categories, and a lot more. The newer versions, your 24.11 included, do not, and rightfully so. But our hAcqEnsenso-NxLib.so still picked it up as a dependency, even though it does not actually use it. I have now fixed the linking step to only include the symbols we need from libhalconcpp.so.

We are tracking this as issue #5998.

Regards,
Raphael

Hi Raphael,

Thank you for your reply.

Is there already an ETA for the bug fix release?

With the current version, can I use the “standard” SDK instead of Halcon or will I encounter the same issue?

Regards,

Alessandro

We aim to have the bugfix release ready in a few days. We want to include slightly larger fix we are still working on, so it might take us a week.

The normal Ensenso SDK should work without issues. The missing symbols only affect the Halcon interface library.

If you still encounter any problems, please let me know.

That’s good, thank you for the clarification.