> But what is the alternative if you want to build shared libraries
I don't know about Scons, but you can use CMake, and it will just work:
add_library(foo SHARED foo.c bar.c)
This will give you depending what you need:
-UNIX Makefiles (not quite sure if it requires GNU make, I don't think
-MS nmake makefiles
-Visual Studio >= 6 projects.
I wondered for years why suddenly the comopiler can't be called directly
anymore, to find out that it's just libtool and you can use the compiler
very well directly (which removes one layer of indirection -> makes it
easier to understand).