FAQ
Hello!

Having read the postings by Sebastian Setzer and Dan Horák, it seems,
that this DLLMAIN problem is not only win95 problem. I have an NT 4.0
server box running with the latest release of cygwin (v1.1) and gcc
2.95.2 and I get the same kind of message about conflicting delcarations
of dllmain, when trying to compile PG7RC2:
I got an error message, complaining that the declaration of
DllMain in dllinit.c conflicts with the declaration in
cygwin/cygwin_dll.h

in cygwin/cygwin_dll.h :
#define DECLARE_CYGWIN_DLL(Entry) \
.... \
int WINAPI Entry (HANDLE h, DWORD reason, void *ptr); \
...
which should expand to :
int WINAPI DllMain (HANDLE h, DWORD reason, void *ptr);

in dllinit.c :
BOOL APIENTRY DllMain(HINSTANCE hInst, DWORD reason, LPVOID reserved);
Has anybody a clue about the origin of this problem? Trying to remove
the conflicting declaration only makes things worse ...

Thanks,

Juhan Ernits

Search Discussions

  • Juhan Ernits at May 2, 2000 at 1:20 am
    Think i found the catch:

    cygwin_dll.h contains these lines:

    #define DECLARE_CYGWIN_DLL(Entry)

    CDECL_BEGIN
    int WINAPI _cygwin_dll_entry (HANDLE h, DWORD reason, void *ptr);


    Meaning, that lines 43 and 44 in utils/dllinit.c:

    BOOL APIENTRY DllMain(HHINSTANCE hInst, DWORD reason,
    LPVOID reserved /* Not used. */ );

    should look like this:

    BOOL WINAPI DllMain(HANDLE hInst, DWORD reason,
    void *reserved /* Not used. */ );


    And lines 76-80

    BOOL APIENTRY
    DllMain(
    HINSTANCE hInst /* Library instance handle. */ ,
    DWORD reason /* Reason this function is being called. */
    ,
    LPVOID reserved /* Not used. */ )

    should look like this

    BOOL WINAPI
    DllMain(
    HANDLE hInst /* Library instance handle. */ ,
    DWORD reason /* Reason this function is being called. */
    ,
    void *reserved /* Not used. */ )

    LPVOID *reserved /* Not used. */ )

    Please correct me if I am wrong.

    Juhan Ernits




    Juhan Ernits wrote:
    Hello!

    Having read the postings by Sebastian Setzer and Dan Horák, it seems,
    that this DLLMAIN problem is not only win95 problem. I have an NT 4.0
    server box running with the latest release of cygwin (v1.1) and gcc
    2.95.2 and I get the same kind of message about conflicting delcarations
    of dllmain, when trying to compile PG7RC2:
    I got an error message, complaining that the declaration of
    DllMain in dllinit.c conflicts with the declaration in
    cygwin/cygwin_dll.h

    in cygwin/cygwin_dll.h :
    #define DECLARE_CYGWIN_DLL(Entry) \
    .... \
    int WINAPI Entry (HANDLE h, DWORD reason, void *ptr); \
    ...
    which should expand to :
    int WINAPI DllMain (HANDLE h, DWORD reason, void *ptr);

    in dllinit.c :
    BOOL APIENTRY DllMain(HINSTANCE hInst, DWORD reason, LPVOID reserved);
    Has anybody a clue about the origin of this problem? Trying to remove
    the conflicting declaration only makes things worse ...

    Thanks,

    Juhan Ernits

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouppgsql-ports @
categoriespostgresql
postedMay 1, '00 at 10:34p
activeMay 2, '00 at 1:20a
posts2
users1
websitepostgresql.org
irc#postgresql

1 user in discussion

Juhan Ernits: 2 posts

People

Translate

site design / logo © 2022 Grokbase