Thanks for the tip Raj, it got me into the right track. The error was that "Python.h" missing, but the interesting bit was the path where it was looking for it.
It was searching for it within:
while in the filesystem it existed at
From that I deduced that somehow it was picking conflicting values for DISTRO_VERSION, executing the follow commands confirmed my suspicion
bitbake -e gdb-cross-canadian-arm | grep "^DISTRO"; -> DISTRO_VERSION="my-distro-version"
bitbake -e nativesdk-python3| grep "^DISTRO"; -> DISTRO_VERSION="3.2.1"
After digging a bit more I figured why it was happening, "my-distro-version" was defined through an override:
However for nativesdk recipes MACHINEOVERRIDES is empty so it picked up DISTRO_VERSION as defined in poky.conf file, "3.2.1".
Dropping the override and having both DISTRO_VERSION equal solved the issue. Thanks!