[疑难] DDBI D语言数据库接口具体怎么编译?怎么用?

jinheking 2007-03-01
我下载了两个包0.2.4  0.2.5,后一个需要tango,我连tango都安装不上,郁闷!
第一个我倒是便已成功了,就是不知道怎么用?*.lib要放在什么位置?怎么调用!

对不起,我是一个新手,没有接触过,以前主要是学习java.最近被D Lang吸引,开始学习!

请各位老大不吝赐教!
ideage 2007-03-01

1.lib可以放在dmd\lib\下,只要编译器在编译时可以找到就好了.
2.请参见
http://ideage.iteye.com/blog/34553
jinheking 2007-03-02
我把dbi.lib 和DBI目录全部放到了dmd\lib下面,这时候提示这个错误
pg.d(2): module all cannot read file 'dbi\all.d'
ideage 2007-03-02
DBI目录 最好放在 dmd/import 目录下.
编译程序(用DMD)是使用 -I.. 选项.
jinheking 2007-03-02
我的dmd下面本来没有import目录,我自己建立了一个,并且把dbi目录也copy了过去,但是错误依然
jinheking 2007-03-02
我把dbi目录copy到本目录进行编译通过了,但是有新的问题
dmd pg.d
D:\LAMP\dmd\dmd\bin\..\..\dm\bin\link.exe pg,,,user32+kernel32/noi;
OPTLINK (R) for Win32  Release 7.50B1
Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved

pg.obj(pg)
Error 42: Symbol Undefined _D3dbi2pg10PgDatabase10PgDatabase7__ClassZ
pg.obj(pg)
Error 42: Symbol Undefined _D3dbi2pg10PgDatabase10PgDatabase5_ctorMFZC3dbi2pg10
PgDatabase10PgDatabase
--- errorlevel 2


而且编译的可执行文件不能够运行
ideage 2007-03-02
1.修改一下sc.ini
例如我的是:
[Version]
version=7.51 Build 020

[Environment]
LIB="%@P%\..\lib";\dm\lib
DFLAGS="-I%@P%\..\src\phobos;D:\D\dmd\import"
LINKCMD=%@P%\..\..\dm\bin\link.exe

2.先编译库.
例如编译sqlite,使用implib和sqlite3.dll生成一个 sqllite3.lib
使用 dmd -run builddbi.d sqlite 编译生成dbi.lib

3.再编译应用程序.引用dbi.lib,sqllite3.lib
dmd test.d dbi.lib sqllite3.lib -I..


Global site tag (gtag.js) - Google Analytics