Thread overview
mySQL: Anyone use with DMC++
Mar 16, 2003
ben.jones
Mar 16, 2003
jim p
Mar 16, 2003
Christof Meerwald
Mar 16, 2003
jim p
Mar 17, 2003
Paul McKenzie
Mar 17, 2003
Ilya Minkov
March 16, 2003
Dear all,

I am trying to move away from the VC++ and over to DMC++. I am having some trouble getting a clean build using the mySQL headers and library.  Has anyone used these in this environment?  It may be something simple.  I am not sure. This is new to me.  Thank you for your time.

Ben


March 16, 2003
I'm here to find a solution to the exact problem you're having...

I can get the compilation to work, but the link fails.
I don't think the libraries are compatible.
I get the message

OPTLINK (R) for Win32  Release 7.50B1
Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved

C:\Progra~1\MySQL\lib\opt\mySQLclient.lib
 Error 43: Not a Valid Library File


Anyone got any answers ???


<ben.jones@infosis1.com> wrote in message news:b5151e$2nf4$1@digitaldaemon.com...
> Dear all,
>
> I am trying to move away from the VC++ and over to DMC++. I am having some trouble getting a clean build using the mySQL headers and library.  Has
anyone
> used these in this environment?  It may be something simple.  I am not
sure.
> This is new to me.  Thank you for your time.
>
> Ben
>
>


March 16, 2003
On Sun, 16 Mar 2003 12:31:24 -0000, jim p wrote:
> OPTLINK (R) for Win32  Release 7.50B1
> Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved
> 
> C:\Progra~1\MySQL\lib\opt\mySQLclient.lib
>  Error 43: Not a Valid Library File

Use coff2omf (see http://www.digitalmars.com/ctg/implib.html#coff2omf) to
convert the lib-file.


bye, Christof

-- 
http://cmeerw.org                                 JID: cmeerw@jabber.at mailto cmeerw at web.de

...and what have you contributed to the Net?
March 16, 2003
Thanks Christof,

It nearly worked.
I now get the message

OPTLINK (R) for Win32  Release 7.50B1
Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved

C:\Progra~1\MySQL\lib\opt\mySQLclient.lib(default)  Offset 45E04H Record
Type 00C3
 Error 16: Index Range

Jim




"Christof Meerwald" <cmeerw@web.de> wrote in message news:b51tau$480$1@digitaldaemon.com...
> On Sun, 16 Mar 2003 12:31:24 -0000, jim p wrote:
> > OPTLINK (R) for Win32  Release 7.50B1
> > Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved
> >
> > C:\Progra~1\MySQL\lib\opt\mySQLclient.lib
> >  Error 43: Not a Valid Library File
>
> Use coff2omf (see http://www.digitalmars.com/ctg/implib.html#coff2omf) to
> convert the lib-file.
>
>
> bye, Christof
>
> --
> http://cmeerw.org                                 JID: cmeerw@jabber.at mailto cmeerw at web.de
>
> ...and what have you contributed to the Net?


March 17, 2003
"jim p" <x@y.com> wrote in message news:b51qrc$2vh$1@digitaldaemon.com...
> I'm here to find a solution to the exact problem you're having...
>
> I can get the compilation to work, but the link fails.
> I don't think the libraries are compatible.
> I get the message
>
> OPTLINK (R) for Win32  Release 7.50B1
> Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved
>
> C:\Progra~1\MySQL\lib\opt\mySQLclient.lib
>  Error 43: Not a Valid Library File
>

I have never used the mySQL library, but is the mySQLclient.lib an import library and not a static library?  If it is an import library, then it is a VC++ compatible library, and import libraries are usually not compatible betweeen compilers.

Is there a mySQLclient.dll file included in the mySQL installation?  If so, maybe it's possible to create a DMC compatible import library from the DLL without involving the mySqlclient.lib.

Borland (now Inprise) has a program called IMPLIB.EXE that takes a DLL (not
an existing import library) and creates a Borland C++ compatible import
library file.   I hardly use Borland any more, but  IMPLIB was a godsend if
I was given VC++ lib files (which were unusable) and the DLL file.  Maybe
DMC++ has such an app to create import library files that are compatible for
DMC++ (if not, maybe Walter will consider making one :)).

Paul


March 17, 2003
Yes, the binary formats are incompatible. Those of DMC and Borland are left-overs of the DOS days...

Anyway, if your library is available as DLL, you should use the import librarian, which you get in an utility package here:

http://www.digitalmars.com/download/dmcpp.html

Agree to the agreement, then scroll to "Basic Utilities"... How could you live without them?

Documentation is here:

http://www.digitalmars.com/ctg/implib.html

However, if it isn't a DLL, and you don't have or can't fix the source to compile on DMC, the last thing you can try is to use the binary conversion routine, coff2omf. I have an old one from dm812util.zip, but using it gives very whacky results. It's not what you should generally do. It seems that Walter doesn't offer it for free download anymore, but tries to sell it for a fair amount of green pieces of paper (which are not unhappy even without being moved back and forth :> ). Here:

http://www.digitalmars.com/eup.html

So first, try recompiling the library itself with DMC, and post the specific problems you can't handle here again. I guess original authors would also appreciate a fixed version. See these for more information:

http://www.digitalmars.com/ctg/switchtodigitalmars.html
http://www.digitalmars.com/ctg/ctgPorting.html

I've also got some trouble porting MiniFMOD, and the problem is with inline assembly, but i forgot to post it. :(

-i.



Paul McKenzie wrote:
> "jim p" <x@y.com> wrote in message news:b51qrc$2vh$1@digitaldaemon.com...
> 
>>I'm here to find a solution to the exact problem you're having...
>>
>>I can get the compilation to work, but the link fails.
>>I don't think the libraries are compatible.
>>I get the message
>>
>>OPTLINK (R) for Win32  Release 7.50B1
>>Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved
>>
>>C:\Progra~1\MySQL\lib\opt\mySQLclient.lib
>> Error 43: Not a Valid Library File
>>
> 
> 
> I have never used the mySQL library, but is the mySQLclient.lib an import
> library and not a static library?  If it is an import library, then it is a
> VC++ compatible library, and import libraries are usually not compatible
> betweeen compilers.
> 
> Is there a mySQLclient.dll file included in the mySQL installation?  If so,
> maybe it's possible to create a DMC compatible import library from the DLL
> without involving the mySqlclient.lib.
> 
> Borland (now Inprise) has a program called IMPLIB.EXE that takes a DLL (not
> an existing import library) and creates a Borland C++ compatible import
> library file.   I hardly use Borland any more, but  IMPLIB was a godsend if
> I was given VC++ lib files (which were unusable) and the DLL file.  Maybe
> DMC++ has such an app to create import library files that are compatible for
> DMC++ (if not, maybe Walter will consider making one :)).
> 
> Paul
>