Re: undefined symbol: GetPrinterDataA

2001-02-26 Thread gerard patel

At 08:30 PM 25/02/2001 +0600, you wrote:
I am trying to modify the Wine PostScript driver to use GetPrinterDataA
to read configuration information from the registry.  I have added a
line that reads "import winspool.drv" to wineps.spec, and Wine builds
with no errors.  When I try to run Wine, however, I get the following
error:

BUILTIN32_dlopen failed to load .so lib for builtin wineps.dll:
/usr/lib/wine/libwineps.so: undefined symbol: GetPrinterDataA

Note the differences between the Makefile for common dialog (where this
works) and the Makefile for wineps :

commdlg :

# Generated automatically from Makefile.in by configure.
TOPSRCDIR = ../..
TOPOBJDIR = ../..
SRCDIR= .
MODULE= comdlg32
ALTNAMES  = commdlg
EXTRALIBS = $(LIBUUID)
 
LDDLLFLAGS = -Wl,-Bsymbolic
SYMBOLFILE = $(MODULE).tmp.o
(...)

wineps :

# Generated automatically from Makefile.in by configure.
TOPSRCDIR = ../..
TOPOBJDIR = ../..
SRCDIR= .
MODULE= wineps
SOVERSION = 1.0
ALTNAMES  = wineps16
IMPORTS   = user32 gdi32 kernel32 ntdll
 
C_SRCS = \

(...)

I think that the mechanism is not working because dlls separation
is not done for wineps ;-)

Gerard






Re: Re: undefined symbol: GetPrinterDataA

2001-02-26 Thread Eric Pouech

wineps :

# Generated automatically from Makefile.in by configure.
TOPSRCDIR = ../..
TOPOBJDIR = ../..
SRCDIR= .
MODULE= wineps
SOVERSION = 1.0
ALTNAMES  = wineps16
IMPORTS   = user32 gdi32 kernel32 ntdll
in this case, just add winspool.drv to the IMPORT list in the
Makefile.in, rerun configure, and it should work.
(If Alexandre didn't convert the Makefile.in for dll separation, there
should be some good reasons... like using non exported symbols... which
would require much more work)
A+
---
Eric Pouech
(http://perso.wanadoo.fr/eric.pouech/)
"The future will be better tomorrow",
Vice President Dan Quayle





Re: undefined symbol: GetPrinterDataA

2001-02-26 Thread Ove Kaaven



On Sun, 25 Feb 2001, Ian Pilcher wrote:

 I am trying to modify the Wine PostScript driver to use GetPrinterDataA
 to read configuration information from the registry.  I have added a
 line that reads "import winspool.drv" to wineps.spec, and Wine builds
 with no errors.  When I try to run Wine, however, I get the following
 error:
 
 BUILTIN32_dlopen failed to load .so lib for builtin wineps.dll:
 /usr/lib/wine/libwineps.so: undefined symbol: GetPrinterDataA
 
 Ideas?

I'm not sure if wineps is completely dll-separated yet. In any case, there
is an IMPORTS = ... line in wineps/Makefile.in that should be added to.






Re: undefined symbol: GetPrinterDataA

2001-02-26 Thread Dimitrie O. Paun

From: "Ove Kaaven" [EMAIL PROTECTED]

 I'm not sure if wineps is completely dll-separated yet.

BTW, do we have a list of dlls that are not yet dll-separated?
(I know, if we had, you'd know about wineps...:) )

Better yet, how can we tell if a dll is separated?

Would it be useful to create such a list, and maybe list
for each of the dlls in there, why there aren't separated yet?

--
Dimi.







Re: undefined symbol: GetPrinterDataA

2001-02-26 Thread Ian Pilcher

Eric Pouech wrote:
 
 in this case, just add winspool.drv to the IMPORT list in the
 Makefile.in, rerun configure, and it should work.

That did the trick.  Thanks!

-- 

Ian Pilcher   [EMAIL PROTECTED]






Re: undefined symbol: GetPrinterDataA

2001-02-26 Thread Alexandre Julliard

"Dimitrie O. Paun" [EMAIL PROTECTED] writes:

 Would it be useful to create such a list, and maybe list
 for each of the dlls in there, why there aren't separated yet?

Here's a list of the undefined symbols that prevent separation of the
remaining dlls (I didn't include user/gdi/kernel to avoid scaring
people too much ;-)

./libddraw.so: undefined reference to `DIB_CreateDIBSection'
./libddraw.so: undefined reference to `DIB_GetDIBWidthBytes'
./libddraw.so: undefined reference to `PROFILE_GetWineIniBool'
./libddraw.so: undefined reference to `WIN_FindWndPtr'
./libddraw.so: undefined reference to `WIN_ReleaseWndPtr'
./libddraw.so: undefined reference to `X11DRV_WND_GetXWindow'
./libddraw.so: undefined reference to `display'
./libddraw.so: undefined reference to `root_window'
./libddraw.so: undefined reference to `visual'

./libopengl32.so: undefined reference to `DC_GetDCPtr'
./libopengl32.so: undefined reference to `GDI_ReleaseObj'
./libopengl32.so: undefined reference to `XFONT_GetFontObject'
./libopengl32.so: undefined reference to `display'
./libopengl32.so: undefined reference to `root_window'
./libopengl32.so: undefined reference to `visual'

./libdinput.so: undefined reference to `MOUSE_Enable'
./libdinput.so: undefined reference to `USER_Driver'

./libwinedos.so: undefined reference to `DOSMEM_Available'
./libwinedos.so: undefined reference to `DOSMEM_FreeBlock'
./libwinedos.so: undefined reference to `DOSMEM_GetBlock'
./libwinedos.so: undefined reference to `DOSMEM_Init'
./libwinedos.so: undefined reference to `DOSMEM_MapRealToLinear'
./libwinedos.so: undefined reference to `DOSMEM_wrap_seg'
./libwinedos.so: undefined reference to `EXC_RtlRaiseException'
./libwinedos.so: undefined reference to `FILE_GetUnixHandle'
./libwinedos.so: undefined reference to `INSTR_EmulateInstruction'
./libwinedos.so: undefined reference to `INT_GetRMHandler'
./libwinedos.so: undefined reference to `INT_Int09SendScan'
./libwinedos.so: undefined reference to `INT_Int33Message'
./libwinedos.so: undefined reference to `INT_RealModeInterrupt'
./libwinedos.so: undefined reference to `INT_SetRMHandler'
./libwinedos.so: undefined reference to `VGA_Clean'
./libwinedos.so: undefined reference to `_LeaveWin16Lock'
./libwinedos.so: undefined reference to `full_argv0'

./libwineps.so: undefined reference to `CloseJob16'
./libwineps.so: undefined reference to `DC_GetDCPtr'
./libwineps.so: undefined reference to `DIB_GetBitmapInfo'
./libwineps.so: undefined reference to `DIB_GetDIBWidthBytes'
./libwineps.so: undefined reference to `DRIVER_RegisterDriver'
./libwineps.so: undefined reference to `DRIVER_UnregisterDriver'
./libwineps.so: undefined reference to `DrvGetPrinterData16'
./libwineps.so: undefined reference to `DrvSetPrinterData16'
./libwineps.so: undefined reference to `GDI_GetObjPtr'
./libwineps.so: undefined reference to `GDI_ReleaseObj'
./libwineps.so: undefined reference to `OpenJob16'
./libwineps.so: undefined reference to `PROFILE_EnumWineIniString'
./libwineps.so: undefined reference to `PROFILE_GetWineIniString'
./libwineps.so: undefined reference to `SelectClipRgn16'
./libwineps.so: undefined reference to `WriteSpool16'

./libmcicda.drv.so: undefined reference to `CDROM_Close'
./libmcicda.drv.so: undefined reference to `CDROM_Audio_Stop'
./libmcicda.drv.so: undefined reference to `CDROM_Audio_GetCDStatus'
./libmcicda.drv.so: undefined reference to `CDROM_Audio_Play'
./libmcicda.drv.so: undefined reference to `CDROM_Audio_GetTracksInfo'
./libmcicda.drv.so: undefined reference to `CDROM_CloseDev'
./libmcicda.drv.so: undefined reference to `CDROM_OpenDev'
./libmcicda.drv.so: undefined reference to `CDROM_Audio_GetSerial'
./libmcicda.drv.so: undefined reference to `CDROM_Open'
./libmcicda.drv.so: undefined reference to `CDROM_Audio_GetNumberOfTracks'
./libmcicda.drv.so: undefined reference to `CDROM_Audio_Pause'
./libmcicda.drv.so: undefined reference to `CDROM_SetDoor'
./libmcicda.drv.so: undefined reference to `CDROM_Audio_Seek'

./libws2_32.so: undefined reference to `SERVICE_Delete'
./libws2_32.so: undefined reference to `SERVICE_AddObject'
./libws2_32.so: undefined reference to `FILE_GetUnixHandle'

./libx11drv.so: undefined reference to `BITMAP_Driver'
./libx11drv.so: undefined reference to `BITMAP_GetWidthBytes'
./libx11drv.so: undefined reference to `CLIPBOARD_DeleteRecord'
./libx11drv.so: undefined reference to `CLIPBOARD_EmptyCache'
./libx11drv.so: undefined reference to `CLIPBOARD_GetFormatName'
./libx11drv.so: undefined reference to `CLIPBOARD_IsPresent'
./libx11drv.so: undefined reference to `CLIPBOARD_LookupFormat'
./libx11drv.so: undefined reference to `CLIPBOARD_ReleaseOwner'
./libx11drv.so: undefined reference to `CLIPPING_IntersectVisRect'
./libx11drv.so: undefined reference to `COLOR_IsSolid'
./libx11drv.so: undefined reference to `COLOR_PaletteLookupExactIndex'
./libx11drv.so: undefined reference to `COLOR_PaletteLookupPixel'
./libx11drv.so: undefined reference to `COLOR_gapEnd'
./libx11drv.so: 

undefined symbol: GetPrinterDataA

2001-02-25 Thread Ian Pilcher

I am trying to modify the Wine PostScript driver to use GetPrinterDataA
to read configuration information from the registry.  I have added a
line that reads "import winspool.drv" to wineps.spec, and Wine builds
with no errors.  When I try to run Wine, however, I get the following
error:

BUILTIN32_dlopen failed to load .so lib for builtin wineps.dll:
/usr/lib/wine/libwineps.so: undefined symbol: GetPrinterDataA

Ideas?
-- 

Ian Pilcher   [EMAIL PROTECTED]






Re: undefined symbol: GetPrinterDataA

2001-02-25 Thread Ian Pilcher

[EMAIL PROTECTED] wrote:
 
 I think maybe you have created a new dependency and need to run make
 depend again?  If I understand the import mechanism, something
 (winebuild?) generates stubs for the functions you import and ties them
 in to the import mechanism, so they shouldn't be left hanging for ld.so
 to choke on.  They should resolve to .spec.o.  It looks to me as if the
 .spec didin't get rebuilt.
 

If only it were that simple.  I've rebuilt from scratch, with a clean
source tree.

-- 

Ian Pilcher   [EMAIL PROTECTED]






Re: undefined symbol: GetPrinterDataA

2001-02-25 Thread Ian Pilcher

[EMAIL PROTECTED] wrote:
 
 Try:
 
 import winspool
 
 instead of winspool.drv, and see if that helps.  Just a guess.
 

Nope.  winebuild complains that it "could not open .so file for
winspool".

I've uncovered a couple of additional facts which (I hope) may shed some
light on the situation.

I whipped up a quick Winelib program which calls GetPrinterDataA, and it
runs just fine -- using a previous, working, Wine build.

I tried commenting out the calls to GetPrinterDataA, and Wine now
complains that OpenPrinterA is an undefined symbol.

So the problem seems to affect multiple functions in winspool.drv, but
it doesn't affect Winelib programs.

-- 

Ian Pilcher   [EMAIL PROTECTED]