ncs-zigbee 1.4.0 release with mandatory LTO

Hi there,

I'm evaluating the latest release of NCS ZigBee addon version 1.4.0, wanted to try and migrate my existing project to the newer version. I've encountered the following problem while attempting to do that:

Apparently with this version you are shipping zboss libraries with mandatory LTO requirement as a build option. I can build your sample projects with the latest toolchain 3.4.0 based on gcc 14.  

However in my projects with older version of ZigBee addon (1.3.0) I was successfully using alternative toolchains to build and deploy firmware: llvm-based and a custom-built gcc 16-based.

I'm using those to get an access to the latest C++ features. And it was working fine with the older version of addon because zboss libraries and a configuration around it were not requiring LTO to be used. Unfortunately I cannot use those toolchains anymore since apparently you've hard-coded LTO into the 1.4.0. And I can only link it using your official GCC 14 and that is very limiting without a good reason.

I'd like to make a feature request:

please, provide non-LTO versions of zboss libraries and make it possible to opt out of the LTO build. Or if zboss sources were available it would also lift the limitations of the current approach.

If you could also provide pointers as to how I could workaround this limitation now it would also be very helpful.

Thank you! 

Related