Trouble with static linking
Essoje Oliveira de Almeida
Essoje_member at pathlink.com
Mon Feb 20 14:23:29 PST 2006
I have a X68Sound.dll (not mine) that I'd like to use in my project, but I can't
get it to link, and being a beginner D programmer doesn't help me much. I know
I've used implib as "implib /system x68sound.lib x68sound.def" to create a
library and tried to link it as it follows. The .lib, .def, and .dll and all in
the same directory as the rest of the code.
This is DDA.d
******************
module dda;
import std.stdio;
import X68Sound;
int main()
{
int ret;
ret = X68Sound_Start();
X68Sound_Free();
return 0;
}
******************
And this one is x68sound.d
******************
module X68Sound;
export int X68Sound_Start(int samprate=44100, int opmflag=1, int adpcmflag=1,
int betw=5, int pcmbuf=5, int late=200, double rev=1.0);
export void X68Sound_Free();
******************
And this guys is X68Sound.def
******************
LIBRARY "X68Sound.dll"
DESCRIPTION "X68k Sound Generator"
EXPORTS
X68Sound_Start @1
X68Sound_Samprate @2
X68Sound_Reset @3
X68Sound_Free @4
X68Sound_BetwInt @5
X68Sound_StartPcm @6
X68Sound_GetPcm @7
X68Sound_OpmPeek @8
X68Sound_OpmReg @9
X68Sound_OpmPoke @10
X68Sound_OpmInt @11
X68Sound_OpmWait @12
X68Sound_OpmClock @13
X68Sound_AdpcmPeek @14
X68Sound_AdpcmPoke @15
X68Sound_PpiPeek @16
X68Sound_PpiPoke @17
X68Sound_PpiCtrl @18
X68Sound_DmaPeek @19
X68Sound_DmaPoke @20
X68Sound_DmaInt @21
X68Sound_DmaErrInt @22
X68Sound_MemReadFunc @23
X68Sound_WaveFunc @24
X68Sound_Pcm8_Out @25
X68Sound_Pcm8_Aot @26
X68Sound_Pcm8_Lot @27
X68Sound_Pcm8_SetMode @28
X68Sound_Pcm8_GetRest @29
X68Sound_Pcm8_GetMode @30
X68Sound_Pcm8_Abort @31
X68Sound_TotalVolume @32
X68Sound_ErrorCode @33
X68Sound_DebugValue @34
******************
And finally this is what I get...
******************
C:\Proj\DDS>dmd dda.d x68sound.lib
C:\dm\bin\link.exe dda,,,x68sound.lib+user32+kernel32/noi;
OPTLINK (R) for Win32 Release 7.50B1
Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved
C:\DMD\BIN\..\lib\phobos.lib(dmain2)
Error 42: Symbol Undefined _D8X68Sound14X68Sound_StartFiiiiiidZi
C:\DMD\BIN\..\lib\phobos.lib(dmain2)
Error 42: Symbol Undefined _D8X68Sound13X68Sound_FreeFZv
******************
Please enlight me in this.
Thanks in advance,
Essoje
More information about the Digitalmars-d-learn
mailing list