Thread overview | |||||
---|---|---|---|---|---|
|
January 26, 2002 dxguid.lib format | ||||
---|---|---|---|---|
| ||||
I am doing an attempt at porting the SDL to DigitalMars. (http://www.libsdl.org) This lib is compiled usually with gcc (under Linux or MingWin32), or VC6. I did use VC5 to generate the makefiles from the VC6 project files. I hacked heavily the produced makefile, replacing cl with sc, and cleaning up the incredible mess. I still have to use nmake, as smake is not happy yet. Only the Win32 environment is used and targeted. *** The compile is done with: CPP=sc.exe CPP_PROJ=-5 -a4 -mn -o -ff -ND -NL -v0 -WD -I"..\..\src" -I"..\..\src\audio" \ -I"..\..\src\video" -I"..\..\src\video\wincommon" -I"..\..\src\video\windx5" \ -I"..\..\src\events" -I"..\..\src\joystick" -I"..\..\src\cdrom" \ -I"..\..\src\thread" -I"..\..\src\thread\win32" -I"..\..\src\timer" \ -I"..\..\include" /I "..\..\include\SDL" \ -DNDEBUG -DWIN32 -D_WINDOWS -D_WIN32_WINNT=0x0400 \ -DENABLE_WINDIB -DENABLE_DIRECTX \ -o$(INTDIR)\ -c CPP_OBJS=.\Release/ c{$(CPP_OBJS)}.obj:: $(CPP) @<< $(CPP_PROJ) $< << +++ Compile is going OK, with the exeption of a few files where NULL is found as undefined, even if <stdio.h> is included !!! *** The linking is done with: LINK32=link.exe LINK32_OPTS=/NOLOGO /ECHOINDIRECT /EXETYPE:NT /MACHINE:I386 /MAP /IMPLIB LINK32_OUT="$(OUTDIR)\SDL.dll" LINK32_MAP="$(OUTDIR)\SDL.map" LINK32_FLAGS=snd.lib snn.lib winmm.lib dxguid.lib kernel32.lib user32.lib \ gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib \ oleaut32.lib uuid.lib "$(OUTDIR)\SDL.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS) $(LINK32) @<< $(LINK32_OPTS) $(LINK32_OBJS), $(LINK32_OUT), $(LINK32_MAP), $(LINK32_FLAGS) << +++ Here is what I get: OPTLINK (R) for Win32 Release 7.50B1 Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved Definition File: (.def):.\Release\SDL_joystick.obj(SDL_joystick) Offset 0016DH Record Type 0091 Error 1: Previous Definition Different : _SDL_NumJoysticks dxguid.lib Warning 2: File Not Found dxguid.lib \Release\SDL_dx5events.obj(SDL_dx5events) Error 42: Symbol Undefined _IID_IDirectInputDevice2A \Release\SDL_dx5events.obj(SDL_dx5events) Error 42: Symbol Undefined _GUID_SysMouse \Release\SDL_dx5events.obj(SDL_dx5events) Error 42: Symbol Undefined _GUID_SysKeyboard \Release\SDL_dx5video.obj(SDL_dx5video) Error 42: Symbol Undefined _IID_IDirectDrawSurface3 \Release\SDL_dx5video.obj(SDL_dx5video) Error 42: Symbol Undefined _IID_IDirectDraw2 \Release\SDL_dx5video.obj(SDL_dx5video) Error 42: Symbol Undefined _GUID_POV \Release\SDL_dx5video.obj(SDL_dx5video) Error 42: Symbol Undefined _GUID_Slider \Release\SDL_dx5video.obj(SDL_dx5video) Error 42: Symbol Undefined _GUID_RzAxis \Release\SDL_dx5video.obj(SDL_dx5video) Error 42: Symbol Undefined _GUID_RyAxis \Release\SDL_dx5video.obj(SDL_dx5video) Error 42: Symbol Undefined _GUID_RxAxis \Release\SDL_dx5video.obj(SDL_dx5video) Error 42: Symbol Undefined _GUID_ZAxis \Release\SDL_dx5video.obj(SDL_dx5video) Error 42: Symbol Undefined _GUID_YAxis \Release\SDL_dx5video.obj(SDL_dx5video) Error 42: Symbol Undefined _GUID_XAxis \Release\SDL_dx5video.obj(SDL_dx5video) Error 42: Symbol Undefined _GUID_Key OPTLINK : Warning 134: No Start Address NMAKE : fatal error U1077: 'K:\DM\BIN\link.exe' : return code '0xf' Stop. +++ dxguid.lib is part of the DirectX SDK The version I have from DX 7 SDK is not in the proper format for Optlink. How can I do the transform ? I think I would need to get all objects out of dxguid.lib by using lib.exe, the do a coff2omf, then do a lib again? The doc on lib is confusing and of not much help. coff2omf has no doc in sight. I do not understand too what I need to add as startup code to have a functionnal dll. (Is something missing from the command line ?) BTW, are my sc options correct to produce fast and compact objs and dll ? Help! TIA Jean-Pierre Dumas |
January 26, 2002 Re: dxguid.lib format | ||||
---|---|---|---|---|
| ||||
Posted in reply to Jean-Pierre H. Dumas | Try to run COFF2OMF on the file.
Jan
"Jean-Pierre H. Dumas" wrote:
> I am doing an attempt at porting the SDL to DigitalMars.
> (http://www.libsdl.org)
>
> This lib is compiled usually with gcc (under Linux or MingWin32),
> or VC6.
> I did use VC5 to generate the makefiles from the VC6 project files.
> I hacked heavily the produced makefile, replacing cl with sc, and
> cleaning up the incredible mess.
> I still have to use nmake, as smake is not happy yet.
>
> Only the Win32 environment is used and targeted.
>
> *** The compile is done with:
>
> CPP=sc.exe
> CPP_PROJ=-5 -a4 -mn -o -ff -ND -NL -v0 -WD -I"..\..\src" -I"..\..\src\audio" \
> -I"..\..\src\video" -I"..\..\src\video\wincommon" -I"..\..\src\video\windx5" \
> -I"..\..\src\events" -I"..\..\src\joystick" -I"..\..\src\cdrom" \
> -I"..\..\src\thread" -I"..\..\src\thread\win32" -I"..\..\src\timer" \
> -I"..\..\include" /I "..\..\include\SDL" \
> -DNDEBUG -DWIN32 -D_WINDOWS -D_WIN32_WINNT=0x0400 \
> -DENABLE_WINDIB -DENABLE_DIRECTX \
> -o$(INTDIR)\ -c
> CPP_OBJS=.\Release/
>
> c{$(CPP_OBJS)}.obj::
> $(CPP) @<<
> $(CPP_PROJ) $<
> <<
>
> +++
> Compile is going OK, with the exeption of a few
> files where NULL is found as undefined, even if <stdio.h> is included !!!
>
> *** The linking is done with:
>
> LINK32=link.exe
> LINK32_OPTS=/NOLOGO /ECHOINDIRECT /EXETYPE:NT /MACHINE:I386 /MAP /IMPLIB
> LINK32_OUT="$(OUTDIR)\SDL.dll"
> LINK32_MAP="$(OUTDIR)\SDL.map"
> LINK32_FLAGS=snd.lib snn.lib winmm.lib dxguid.lib kernel32.lib user32.lib \
> gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib \
> oleaut32.lib uuid.lib
>
> "$(OUTDIR)\SDL.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
> $(LINK32) @<<
> $(LINK32_OPTS) $(LINK32_OBJS), $(LINK32_OUT), $(LINK32_MAP), $(LINK32_FLAGS)
> <<
>
> +++
> Here is what I get:
>
> OPTLINK (R) for Win32 Release 7.50B1
> Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved
>
> Definition File: (.def):.\Release\SDL_joystick.obj(SDL_joystick) Offset 0016DH
> Record Type 0091
> Error 1: Previous Definition Different : _SDL_NumJoysticks
> dxguid.lib
> Warning 2: File Not Found dxguid.lib
> \Release\SDL_dx5events.obj(SDL_dx5events)
> Error 42: Symbol Undefined _IID_IDirectInputDevice2A
> \Release\SDL_dx5events.obj(SDL_dx5events)
> Error 42: Symbol Undefined _GUID_SysMouse
> \Release\SDL_dx5events.obj(SDL_dx5events)
> Error 42: Symbol Undefined _GUID_SysKeyboard
> \Release\SDL_dx5video.obj(SDL_dx5video)
> Error 42: Symbol Undefined _IID_IDirectDrawSurface3
> \Release\SDL_dx5video.obj(SDL_dx5video)
> Error 42: Symbol Undefined _IID_IDirectDraw2
> \Release\SDL_dx5video.obj(SDL_dx5video)
> Error 42: Symbol Undefined _GUID_POV
> \Release\SDL_dx5video.obj(SDL_dx5video)
> Error 42: Symbol Undefined _GUID_Slider
> \Release\SDL_dx5video.obj(SDL_dx5video)
> Error 42: Symbol Undefined _GUID_RzAxis
> \Release\SDL_dx5video.obj(SDL_dx5video)
> Error 42: Symbol Undefined _GUID_RyAxis
> \Release\SDL_dx5video.obj(SDL_dx5video)
> Error 42: Symbol Undefined _GUID_RxAxis
> \Release\SDL_dx5video.obj(SDL_dx5video)
> Error 42: Symbol Undefined _GUID_ZAxis
> \Release\SDL_dx5video.obj(SDL_dx5video)
> Error 42: Symbol Undefined _GUID_YAxis
> \Release\SDL_dx5video.obj(SDL_dx5video)
> Error 42: Symbol Undefined _GUID_XAxis
> \Release\SDL_dx5video.obj(SDL_dx5video)
> Error 42: Symbol Undefined _GUID_Key
> OPTLINK : Warning 134: No Start Address
> NMAKE : fatal error U1077: 'K:\DM\BIN\link.exe' : return code '0xf'
> Stop.
>
> +++
> dxguid.lib is part of the DirectX SDK
> The version I have from DX 7 SDK is not in the proper
> format for Optlink.
> How can I do the transform ?
> I think I would need to get all objects out of
> dxguid.lib by using lib.exe, the do a coff2omf, then
> do a lib again?
> The doc on lib is confusing and of not much help.
> coff2omf has no doc in sight.
>
> I do not understand too what I need to add as startup code to have a functionnal dll. (Is something missing from the command line ?)
>
> BTW, are my sc options correct to produce fast and compact objs and dll ?
>
> Help!
>
> TIA
>
> Jean-Pierre Dumas
|
January 27, 2002 Re: dxguid.lib format | ||||
---|---|---|---|---|
| ||||
Posted in reply to Jean-Pierre H. Dumas | Your options look fine to me. Yes, you need to run COFF2OMF on the .lib file to change the format. Just coff2omf dxguid.lib should work. "Jean-Pierre H. Dumas" <dumas.jeanpierre@free.fr> wrote in message news:1103_1012038610@jeanpierre... > I am doing an attempt at porting the SDL to DigitalMars. > (http://www.libsdl.org) > > This lib is compiled usually with gcc (under Linux or MingWin32), > or VC6. > I did use VC5 to generate the makefiles from the VC6 project files. > I hacked heavily the produced makefile, replacing cl with sc, and > cleaning up the incredible mess. > I still have to use nmake, as smake is not happy yet. > > Only the Win32 environment is used and targeted. > > *** The compile is done with: > > CPP=sc.exe > CPP_PROJ=-5 -a4 -mn -o -ff -ND -NL -v0 -WD -I"..\..\src" -I"..\..\src\audio" \ > -I"..\..\src\video" -I"..\..\src\video\wincommon" -I"..\..\src\video\wind x5" \ > -I"..\..\src\events" -I"..\..\src\joystick" -I"..\..\src\cdrom" \ > -I"..\..\src\thread" -I"..\..\src\thread\win32" -I"..\..\src\timer" \ > -I"..\..\include" /I "..\..\include\SDL" \ > -DNDEBUG -DWIN32 -D_WINDOWS -D_WIN32_WINNT=0x0400 \ > -DENABLE_WINDIB -DENABLE_DIRECTX \ > -o$(INTDIR)\ -c > CPP_OBJS=.\Release/ > > c{$(CPP_OBJS)}.obj:: > $(CPP) @<< > $(CPP_PROJ) $< > << > > +++ > Compile is going OK, with the exeption of a few > files where NULL is found as undefined, even if <stdio.h> is included !!! > > *** The linking is done with: > > LINK32=link.exe > LINK32_OPTS=/NOLOGO /ECHOINDIRECT /EXETYPE:NT /MACHINE:I386 /MAP /IMPLIB > LINK32_OUT="$(OUTDIR)\SDL.dll" > LINK32_MAP="$(OUTDIR)\SDL.map" > LINK32_FLAGS=snd.lib snn.lib winmm.lib dxguid.lib kernel32.lib user32.lib \ > gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib \ > oleaut32.lib uuid.lib > > "$(OUTDIR)\SDL.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS) > $(LINK32) @<< > $(LINK32_OPTS) $(LINK32_OBJS), $(LINK32_OUT), $(LINK32_MAP), $(LINK32_FLAGS) > << > > +++ > Here is what I get: > > OPTLINK (R) for Win32 Release 7.50B1 > Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved > > Definition File: (.def):.\Release\SDL_joystick.obj(SDL_joystick) Offset 0016DH > Record Type 0091 > Error 1: Previous Definition Different : _SDL_NumJoysticks > dxguid.lib > Warning 2: File Not Found dxguid.lib > \Release\SDL_dx5events.obj(SDL_dx5events) > Error 42: Symbol Undefined _IID_IDirectInputDevice2A > \Release\SDL_dx5events.obj(SDL_dx5events) > Error 42: Symbol Undefined _GUID_SysMouse > \Release\SDL_dx5events.obj(SDL_dx5events) > Error 42: Symbol Undefined _GUID_SysKeyboard > \Release\SDL_dx5video.obj(SDL_dx5video) > Error 42: Symbol Undefined _IID_IDirectDrawSurface3 > \Release\SDL_dx5video.obj(SDL_dx5video) > Error 42: Symbol Undefined _IID_IDirectDraw2 > \Release\SDL_dx5video.obj(SDL_dx5video) > Error 42: Symbol Undefined _GUID_POV > \Release\SDL_dx5video.obj(SDL_dx5video) > Error 42: Symbol Undefined _GUID_Slider > \Release\SDL_dx5video.obj(SDL_dx5video) > Error 42: Symbol Undefined _GUID_RzAxis > \Release\SDL_dx5video.obj(SDL_dx5video) > Error 42: Symbol Undefined _GUID_RyAxis > \Release\SDL_dx5video.obj(SDL_dx5video) > Error 42: Symbol Undefined _GUID_RxAxis > \Release\SDL_dx5video.obj(SDL_dx5video) > Error 42: Symbol Undefined _GUID_ZAxis > \Release\SDL_dx5video.obj(SDL_dx5video) > Error 42: Symbol Undefined _GUID_YAxis > \Release\SDL_dx5video.obj(SDL_dx5video) > Error 42: Symbol Undefined _GUID_XAxis > \Release\SDL_dx5video.obj(SDL_dx5video) > Error 42: Symbol Undefined _GUID_Key > OPTLINK : Warning 134: No Start Address > NMAKE : fatal error U1077: 'K:\DM\BIN\link.exe' : return code '0xf' > Stop. > > +++ > dxguid.lib is part of the DirectX SDK > The version I have from DX 7 SDK is not in the proper > format for Optlink. > How can I do the transform ? > I think I would need to get all objects out of > dxguid.lib by using lib.exe, the do a coff2omf, then > do a lib again? > The doc on lib is confusing and of not much help. > coff2omf has no doc in sight. > > I do not understand too what I need to add as startup code to have a functionnal dll. (Is something missing from the command line ?) > > BTW, are my sc options correct to produce fast and compact objs and dll ? > > Help! > > TIA > > Jean-Pierre Dumas > > |
Copyright © 1999-2021 by the D Language Foundation