syphilis has asked for the wisdom of the Perl Monks concerning the following question:

Hi,
Having eventually managed to build Gnome2-Canvas-1.002, I turned my attention to Gnome2-VFS-1.081 ... boredom breeds gluttony for punishment.

I'm using the Gnome2 and associated binaries available from here, and, specifically their 2.24.1-1 libgnomevfs binaries. The errors I'm getting are:
[ LD blib\arch\auto\Gnome2\VFS\VFS.dll ] xs/GnomeVFS.o:GnomeVFS.c:(.text+0xec9): undefined reference to `gnome_ +vfs_dns_sd_service_status_get_type' xs/GnomeVFSDrive.o:GnomeVFSDrive.c:(.text+0xe74): undefined reference +to `gnome_vfs_drive_unmount' xs/GnomeVFSDrive.o:GnomeVFSDrive.c:(.text+0xe9f): undefined reference +to `gnome_vfs_drive_mount' xs/GnomeVFSDrive.o:GnomeVFSDrive.c:(.text+0xef0): undefined reference +to `gnome_vfs_drive_eject' xs/GnomeVFSVolume.o:GnomeVFSVolume.c:(.text+0x11d4): undefined referen +ce to `gnome_vfs_volume_eject' xs/GnomeVFSVolume.o:GnomeVFSVolume.c:(.text+0x1254): undefined referen +ce to `gnome_vfs_volume_unmount' xs/GnomeVFSVolume.o:GnomeVFSVolume.c:(.text+0x1537): undefined referen +ce to `gnome_vfs_connect_to_server' xs/GnomeVFSDNSSD.o:GnomeVFSDNSSD.c:(.text+0x7db): undefined reference +to `gnome_vfs_dns_sd_service_status_get_type' xs/GnomeVFSDNSSD.o:GnomeVFSDNSSD.c:(.text+0xad2): undefined reference +to `gnome_vfs_dns_sd_browse' xs/GnomeVFSDNSSD.o:GnomeVFSDNSSD.c:(.text+0xe2e): undefined reference +to `gnome_vfs_dns_sd_resolve' xs/GnomeVFSDNSSD.o:GnomeVFSDNSSD.c:(.text+0x119e): undefined reference + to `gnome_vfs_dns_sd_browse_sync' xs/GnomeVFSDNSSD.o:GnomeVFSDNSSD.c:(.text+0x1249): undefined reference + to `gnome_vfs_dns_sd_service_list_free' xs/GnomeVFSDNSSD.o:GnomeVFSDNSSD.c:(.text+0x151b): undefined reference + to `gnome_vfs_dns_sd_resolve_sync' xs/GnomeVFSDNSSD.o:GnomeVFSDNSSD.c:(.text+0x196a): undefined reference + to `gnome_vfs_dns_sd_list_browse_domains_sync' xs/GnomeVFSDNSSD.o:GnomeVFSDNSSD.c:(.text+0x1b5f): undefined reference + to `gnome_vfs_get_default_browse_domains' xs/GnomeVFSDNSSD.o:GnomeVFSDNSSD.c:(.text+0x1cba): undefined reference + to `gnome_vfs_dns_sd_stop_browse' xs/GnomeVFSDNSSD.o:GnomeVFSDNSSD.c:(.text+0x1dba): undefined reference + to `gnome_vfs_dns_sd_cancel_resolve' collect2: ld returned 1 exit status dmake: Error code 129, while making 'blib\arch\auto\Gnome2\VFS\VFS.dl +l'
These functions are certainly to be found in various of the headers that are supplied ... but I can't find any of those symbols in any of the import libs being provided.

Anyone happen to know the secret to getting these symbols resolved on Win32 ?
(I'm using the mingw port of gcc-3.4.5 and dmake with mingw-built perl-5.12.0.)

Cheers,
Rob

Replies are listed 'Best First'.
Re: [Win32] Building Gnome2::VFS
by Anonymous Monk on Mar 24, 2011 at 22:00 UTC
    Anyone happen to know the secret to getting these symbols resolved on Win32 ?

    Your only hope is to re-re-re-re-re-recompile :) then, maybe it will work; If it doesn't, you have to tweak the symbol list somehow (i forget how its done, you add export keyword, or some such)

      Your only hope is to re-re-re-re-re-recompile

      Downloaded the source, and eventually managed to satisfy all of configure's requirements. Compilation looked good for a while .... until the non-existent (on windows) netinet/in.h could not be found.

      UPDATE: Including winsock.h (or was it winsock2.h ?) instead of netinet/in.h in whichever header it was that was throwing the error, enabled the build to succeed - but the same undefined references srill crop up and I'm still undecided as to what needs doing. When I can be bothered, I'll probably contact the developers for some advice.

      Obviously configure isn't doing all it ought. I might try an earlier version of gnome-vfs later on and, if that doesn't work, just submit a bug report and forget about the whole buggy mess until next time.

      Cheers,
      Rob