GTK+ app on Windows



Alf Stockton writes:
I have just received the following error while attempting to run my 
application on a strange machine.

Umm, what error? I guess you mean about some missing DLL?

The implication is that even though I compiled & linked with -static 
this did not work.

There are no static GTK+, GLib, Pango, atk libraries being distributed
for Win32, and as far as I know, no static png, zlib, intl, or iconv
libraries either. Shared libraries (DLLs) are pretty much the normal
thing on Windows, since long ago. For GTK+ and GLib, static linking
might even mean that some API would not work. Also, distributing LGPL
code (GTK+ etc) statically linked to a proprietary C library (the
Microsoft C library) which isn't available bundled with the operating
system might be against the LGPL, I don't know.

So rather than do a piece-meal of all required libraries I would
appreciate finding out either why the -static did not do what I
wanted 

Well, it didn't do it because there aren't any static GTK+, Pango, atk
or GLib libraries.

how do I find the dependencies.

There are several ways. One way is to run "objdump -p" on an EXE or
DLL and page through the output. Look for the "import tables".

A free (as in beer) (burp) GUI tool is the Dependency Walker (google
for it).

I cannot find a copy of ldd.exe on the development box.

Well, not surprising, as ldd is a tool for the ELF binary format as
used on Linux, Solaris and others. Windows EXE and DLLs are not ELF.

--tml




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]