After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 610348 - dll dependency problems starting from windows build r18676
dll dependency problems starting from windows build r18676
Status: RESOLVED FIXED
Product: GnuCash
Classification: Other
Component: Build system
git-master
Other Windows
: Normal major
: ---
Assigned To: Derek Atkins
Derek Atkins
Depends on:
Blocks:
 
 
Reported: 2010-02-18 11:55 UTC by C. Dyck
Modified: 2018-06-29 22:35 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Patch for compiling our own binary of libbonoboui (14.30 KB, patch)
2010-02-23 14:03 UTC, Christian Stimming
committed Details | Review

Description C. Dyck 2010-02-18 11:55:42 UTC
Hi,

the dll is missing in the windows build r18676.
Comment 1 Geert Janssens 2010-02-18 16:13:43 UTC
Confirmed on Windows XP.

I don't know why this happens though.
Comment 2 Geert Janssens 2010-02-18 16:28:11 UTC
I have updated the build script to use a more recent libpng.

Hopefully this fixes the problem.
Comment 3 Derek Atkins 2010-02-18 18:26:33 UTC
Note that the build server does not automatically update/rebuild dependencies in the nightly build.  That has to be done manually on the build server.

The only time the deps are fully rebuilt are for tag builds.
Comment 4 Geert Janssens 2010-02-18 18:45:34 UTC
Thanks for the info. I don't have access to the build server, so we will have to wait until someone does the right thing in there.
Comment 5 Christian Stimming 2010-02-19 14:45:22 UTC
Is this fixed in gnucash-2.3.10-svn-r18685-setup.exe ? It should (but other, new, problems might arise)

In this particular case some of the binary gnome packages have this dependency, and those are unpacked from their respective archives at each distribution time anew. Hence, this particular dependency is already fixed even though the local installation of the dependencies is still not yet updated.
Comment 6 C. Dyck 2010-02-19 15:05:59 UTC
Yes it's fixed in r18685.
Perhaps someone can remove the old dll from the installer as it is no longer needed?
Comment 7 Geert Janssens 2010-02-19 15:10:04 UTC
Hmm, when I try to install r18685, I get an error that libxml2 can't be found. Did you uninstall your previous gnucash installation before installing the latest one ?
Comment 8 Geert Janssens 2010-02-20 09:14:36 UTC
For your information, today's nightly build (gnucash-2.3.10-svn-r18694-setup.exe) still fails to start due to missing libxml2.dll
Comment 9 Geert Janssens 2010-02-20 11:37:44 UTC
It looks as if gnome-vfs is the culprit.

I see that Christian made a change in GNOME_VFS_URL in r18664. But unfortunately, this change is made in a commented out config line, not the one that is actually used.

Currently we use a very old version of gnome-vfs for compatibility with Windows 2000 (see bug #504261).

Do we still support Windows 2000 ? If not, we can eliminate this workaround.

Our website only mentions Windows XP and up, so I'm in favor of this change. Windows 2000 is, well, old and long since EOLed.
Comment 10 Geert Janssens 2010-02-20 13:29:35 UTC
I asked about this on irc. Derek considers WXP+ a reasonable base for GnuCash 2.4.

So I'm bumping the gnome-vfs version to 2.24.1.

This means Windows 2000 is from now definitely not supported (I suspect it wasn't anymore before already, but I'm not sure).

I don't know if anything is still required on the build server after this change. If so, would someone kindly perform those actions ?
Comment 11 Geert Janssens 2010-02-20 13:32:01 UTC
Oh, and just for the record: gnome-vfs has dropped Windows 2000 support somewhere during the development of 2.18.

Here is the commit that was responsible for it:
http://git.gnome.org/browse/gnome-vfs/commit/?h=gnome-2-18&id=6ec3452c7afb9935c7ed62768e24be83639f7cd

This was committed somewhere back in 2007
Comment 12 Christian Stimming 2010-02-20 16:26:51 UTC
ok, I've noted the dropped support for windows 2000 on http://wiki.gnucash.org/wiki/Windows .
Comment 13 Geert Janssens 2010-02-21 15:01:41 UTC
Today's build still fails to run on Windows.

Dependency walker indicates that libbonoboui requires libxml2.dll, which is missing.

Unfortunately the included libbonoboui is the most recent one available on ftp.gnome.org. So I'm not sure how to continue to fix this.
Comment 14 Geert Janssens 2010-02-21 17:32:50 UTC
Changing the title from "libpng14-14.dll is missing in windows build r18676" because the libpng issue is fixed, but there are still others.
Comment 15 Christian Stimming 2010-02-21 20:17:36 UTC
> Dependency walker indicates that libbonoboui requires libxml2.dll, which is
> missing.

In r18690, I added the download and installation of a libxml2.dll binary, but this is used only during the build (when calling xsltproc), but we could install and distribute that libxml2.dll as well.

On my system, I didn't get any error message with today's build, but OTOH I for sure have an libxml2.dll binary somewhere in my PATH, so this is no contradiction.
Comment 16 Christian Stimming 2010-02-21 21:29:25 UTC
> Dependency walker indicates that libbonoboui requires libxml2.dll, which is missing.

This libbonoboui is weird indeed. It depends on libgnome-2-0.dll, which in turn pulls in libxml2-2.dll. If libbonoboui would be loaded with this dependencies, both libxml2-2.dll and libxml2.dll are loaded in parallel. I highly doubt this can do anything else than crash, because most probably both are defining mostly the same symbols... ultimatively, we would have to build libbonoboui.dll ourselves.

Strangely enough, on my local winXP with another libxml2.dll in the path, the nightly build r18700 starts up fine.
Comment 17 Christian Stimming 2010-02-21 21:36:32 UTC
And to finally discuss why we're pulling libbonoboui at all: The libgnomeui-2-0.dll has a dependency on libbonoboui-2-0.dll. Libgnomeui is deprecated anyway, see http://live.gnome.org/LibgnomeMustDie , so that's why I understand no current binaries are being built. I guess the "suggested" resolution is to get rid of libgnomeui and replace this by the gtk implementations. In the meantime, we could explore compiling libgnomeui on win32 on our own, and we could hopefully disable its dependency on libbonoboui, as we don't need those parts anyway.
Comment 18 Geert Janssens 2010-02-22 19:14:06 UTC
I may look into removing the libgnomeui and libbonoboui dependencies some time later. It may turn out the be the cleanest solution.
Comment 19 Geert Janssens 2010-02-22 19:15:37 UTC
A first investigation points at the druids we use. GnomeDruid is deprecated in favor of GtkAssistant.

But until a few days back we couldn't use GtkAssistant because it requires gtk 2.10+. That should be fixed since yesterday :)
Comment 20 Christian Stimming 2010-02-23 09:54:41 UTC
> GnomeDruid is deprecated in favor of GtkAssistant.

Yes. See bug#591042 (and bug#591041) for those parts.

As for compiling win32 binaries on our own: It is not possible to compile a libgnomeui without the libbonoboui dependency solely by configure-switches. Hence, we might need to recompile libbonoboui on our own. I've given this a try, but so far I got stopped by libbonoboui's configure check for -lpopt, which might need to be changed for the win32/msys build. Currently I don't have time to investigate this further.
Comment 21 Christian Stimming 2010-02-23 14:03:19 UTC
Created attachment 154498 [details] [review]
Patch for compiling our own binary of libbonoboui

This patch adds compiling our own version of libbonoboui-2.dll. This gets rid of the libxml2.dll dependency.

Because of the dependencies from and to libbonoboui this cannot readily replace the unpacking of the gnome.org binary, but it rather replaces the dlls only. See the commit message for details.
Comment 22 Christian Stimming 2010-02-24 12:50:11 UTC
Fixed with gnucash-2.3.10-svn-r18708-setup.exe?
Comment 23 Geert Janssens 2010-02-24 15:13:35 UTC
Yes, gnucash-2.3.10-svn-r18708 boots fine on Windows XP.

Great work !
Comment 24 John Ralls 2018-06-29 22:35:12 UTC
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=610348. Please update any external references or bookmarks.