OK, sorry for having the whole conversation out loud -- but it helps me think :-)
And I think I've figured out what's going on!
I looked in the environment that works, and, indeed, it has the gcc package in it -- I put it there for fortran, but it installs libstdc++, and of course also gcc itself, and that's the one that is getting called for the build - so that all makes sense.
It turns out that I also have gcc installed in the root environment, so THAT's the one getting used in the "broken" environment. It uses the conda-supplied gcc to build, but does not have the conda-supplied libs.
Now I'm not sure if that's a bug or not -- it kinda seems like it is. If the root environment puts a compiler on the PATH, it should maybe put it's libs in DYLDLIBRARYPATH (or whatever it's called).
But that's a conda issue -- not a conda-forge one.
And now I know how I can fix it.
(thanks for listening :-) )
-CHB