www.digitalmars.com         C & C++   DMDScript  

c++ - mySQL: Anyone use with DMC++

reply ben.jones infosis1.com writes:
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
Mar 15 2003
parent reply "jim p" <x y.com> writes:
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

 used these in this environment?  It may be something simple.  I am not

 This is new to me.  Thank you for your time.

 Ben

Mar 16 2003
next sibling parent reply Christof Meerwald <cmeerw web.de> writes:
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?
Mar 16 2003
parent "jim p" <x y.com> writes:
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?

Mar 16 2003
prev sibling parent reply "Paul McKenzie" <paul paul.net> writes:
"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
Mar 17 2003
parent Ilya Minkov <midiclub 8ung.at> writes:
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

Mar 17 2003