Subject: DLL load error: "not a 32-bit library"
From: [email-masked] (Marc Houyoux)

5 Sep 1998 05:50:18 -0700
Message-ID: <[email-masked]>
Reply-To: Marc Houyoux <[email-masked]>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
To: [email-masked]

I have successfully created a DLL using the example makefile on Fergus
Henderson's web pages that I found from previous posts to this list. I
needed to add the library libf2c.a to the list of libraries because there
is a Fortran program in the library, and this worked fine for compiling.

I linked to the libfoo_dll.a (in my case, prntfor_dll.a) file created by
the makefile, as the web page recommends.  However, when I try to call the
DLL from a Windows application (called Map Info), I get the following
message: 
 
"Unable to load prntfor_dll.a because it is not a 32-bit library."

Has anyone ever seen this before, or have any suggestions as to what might
be wrong?  Here are some more details that might be relevant... 
 
- I'm working on an NT PC

- Using another set of instructions on the web for building DLLs with
Gnu-Win32, I have previously gotten other messages about Map Info simply
not being able to read the library at all.  Using Fergus Henderson's
Makefile, I got the "32-bit" message, which is at least a little more
informative.

- I've already tried the web page suggestions of setting RELOCATABLE to
"yes" and `LDFLAGS-libfoo = --image-base=0x0800000 (within the makefile),
and these did not change the error message.

- The contents of the DLL, for testing purposes, is a simple fortran
program that opens a file and writes to it.

Thanks

*******************************************************************
Marc Houyoux

North Carolina Supercomputing Center - Environmental Programs
3021 Cornwallis Road
Research Triangle Park, NC    27709

phone: (919) 248-4126
fax  : (919) 248-9245

-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".