Re: (coff)-Implib lib from dll

2011-01-15 Thread Nrgyzer
This solved the problems, thanks - but, when the line "mysql =
mysql_init(null);" produces an access violation.


Re: (coff)-Implib lib from dll

2011-01-15 Thread Jimmy Cao
Try this:

implib /s libmysql.lib libmysql.dll

Then change extern(Windows) to extern(C).

(That's how I usually have it set up)


Re: (coff)-Implib lib from dll

2011-01-15 Thread Nrgyzer
Thanks, but didn't help to change to "implib /system libmysql.lib
libmysql.dll"  - some errors.


Re: (coff)-Implib lib from dll

2011-01-15 Thread Mafi

Am 15.01.2011 17:46, schrieb nrgyzer:

I just used "implib libmysql.lib libmysql.dll /system" but it produces
the same errors.


In the implib help it says:
"implib [switches] libfile [ dllfile | deffile ]"

I'm not sure but implib could be picky about where the switches are.

Mafi


Re: (coff)-Implib lib from dll

2011-01-15 Thread nrgyzer
I just used "implib libmysql.lib libmysql.dll /system" but it produces
the same errors.


Re: (coff)-Implib lib from dll

2011-01-15 Thread Mafi

Am 15.01.2011 17:07, schrieb %u:

Hey guys,

I'm trying to connect to my mysql-server on windows. I'm using the mysql 
binding from http://www.steinmole.de/d/ because as I know the
DDBI project doesn't support D2.
I followed the instructions on the site and first created the lib file with implib 
with the following command: "implib libmysql.lib
libmysql.dll" (without ").
Next, I changed the extern(C) statement in mysql.d to extern(Windows).

Now... I create a simple application with the following source:

module test;

pragma(lib, "libmysql.lib");

import mysql;

int main(string[] args) {

MYSQL* mysql;
mysql = mysql_init(null);
mysql_close(mysql);

return 0;

}

I'm trying to compile the source file by using the following command:
"dmd -d test.d mysql.d" (without quotas). The result is the following:

test.obj(test)
  Error 42: Symbol Undefined _mysql_init@4
test.obj(test)
  Error 42: Symbol Undefined _mysql_close@4
--- errorlevel 2

I also tried "dmd -d test.d mysql.d libmysql.lib" without any success. When I 
remove the extern-statement from mysql.d, I get similar
errors.

Note... I'm using the github-version 0.2.3 which was released last week.

I think my mistake is the linking because the binding works on Linux. But... 
not on Windows - perhaps... anyone know how what I'm doing
wrong?

Thanks...
Did you try to use the system flag ('/system') for implib which adds 
leading underscores? I had a similar problem and that solved it for me.