Also dynamic loading works fine, the issue was libpd was being built without HAVE_LIBDL defined.
Actually I was wrong about this. The basic c lib is built with HAVE_LIBDL, but I wasn’t using it in the Xcode project or in ofxPd. Fixing that now.
I’ve done updates to libpd, including building in the externals in pure-data/extra with “make EXTRA=true” and calling their setup functions in libpd_init() when LIBPD_EXTRA is defined. This way you get a complete vanilla, including expr, etc.