Thanks, I thought I saw that somewhere. For the record, the download is called "Microsoft Visual C++ Toolkit 2003" and includes all of the tools you'd need to build Pike with the "native" Microsoft toolchain.
Now to the interesting part:
I compiled the following file:
#include <stdio.h>
__declspec(dllexport) test() { printf("test()\n"); return; }
using the following command lines:
gcc -c test.c -o test_gcc.o cl /c test.c /Fo test_cl.o
and linked them using pntld:
pntld -o test_gcc.so test_gcc.o pntld -o test_cl.so test_cl.o
And the results seem to indicate that pntld doesn't deal with the gcc generated output file (ie __declspec(dllexport) doesn't do the same thing).
So, I'm going to try to figure out what the difference is and come up with a work around.
The two outputs from pntld (with debug enabled) are available here, if anyone has an interest:
http://hww3.riverweb.com/mingw
Bill