This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

DLL's for Dummies


I recently got started with Cygwin. What a great package! Coming from a
Unix programming background I'm completely in the dark about DLL's. I need
to write C programs that access a third party API. I'm experimenting with
gcc but having disappointing results. I'm trying to compile and run an
example C program that came with the third party API package. Although I
don't know how to compile a program against a DLL I've found that the gcc
string below results in an error free compile/link. The resulting
executable runs to some degree. Some API calls execute correctly. However
using the gdb debugger it appears that random memory locations are being
modified as I step through the program. The program employs elements of a
structure as arguments to the API calls. The debugger shows that, in
addition to modifying the correct structure elements, random elements of
the structure are also being modified as I step over many of the API calls.
Also memcpy() appears to produce similar memory corruption. I'm hoping this
will ring a bell with someone who can guide me in the right direction.

Here is the gcc string I'm using:

gcc  -g   myprog.c  -o myprog   /path to third party dll/api.dll

I've been working with this for days.  Forgive me if I haven't read the
right FAQ or documentation. I've scanned about everything I can find. Any
help would be greatly appreciated. Thanks.



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]