Re: [gtk-win32] gdk_pixbuf and "png" format files.



> Incidentally, given that Windows doesn't offer /etc, /lib, /usr and the like
> as part of its standard folder structure (like Linux does)
> where should those folders be located?

At the relative locations they are in the zip file under whatever
arbitrary top installation folder. The top installation folder is
irrelevant; what matters is that the folder structure as in the zip
archive is intact.

(That is, if you want things to work. You might manage to get things
eventually to work also after tinkering if you do it differently, but
then you are on your own.)

I.e., say you have installed some application in c:\Program
Files\MyCompany\CoolApp. That application uses gtk+, and gtk+ comes
bundled with the application, as is the recommended practice. If the
CoolApp executable is at  c:\Program
Files\MyCompany\CoolApp\bin\coolapp.exe, the gtk+ DLL
libgtk-win32-2.0.0.dll (and the other DLLs of would be in the same
"bin" folder as coolapp.exe.

In c:\Program Files\MyCompany\CoolApp\etc\gtk-2.0 would be gdk-pixbuf.loaders.

The gdk-pixbuf loader DLLs (assuming you have such a build of GTK+
where they are separate, and not built in in the gdk-pixbuf DLL) would
be in  c:\Program Files\MyCompany\CoolApp\lib\gtk-2.0\2.10.0\loaders.

Etc. You see the idea?

> the folder structure intact).  This was quite convenient for header files
> and libs - but would it be better for the DLLs if I create those directories
> again, as subfolders of the app's main folder?

On your development machine, do whatever works for you. You probably
want to have several alternative GTK+ versions installed to test
against. It's easiest if you don't put anything in the system PATH,
but just use simple shell functions (if you use some Unix-like shell)
or bat files (if you use cmd.exe) that sets PATH to include a specific
version of GTK+ in that shell (command interpreter window) only.

> The alternative is to add
> E:\gnu-win32 to my system path - but in the longer term, that would have the
> same drawbacks as putting everything into System32.

Yeah, it's quite obnoxious when installers for random apps add stuff
to the system PATH. Instead, simply have the DLLs in the same folder
as the application's exe. Then they will be found there, no PATH
searched. If that doesn't work for you, you could use a minimal
wrapper "launcher" app that sets PATH for that process and its
children only, then spawns the main application exe. Or use the "App
Paths" thing in the Registry (google for it).

--tml


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