Re: comments on the gtkmm -vcXX- naming convention



On Wed, 2008-10-15 at 13:33 -0400, Philip Kovacs wrote:
> I installed the latest gtkmm Windows development package and I have
> some comments.
> 
> From the point of view of application developers who require gtkmm as
> a dependency,
> this new -vcXX- naming convention for the import libraries is a
> burden.
> 
> I have to rework my build systems to handle this new library naming
> convention; offer 
> end-users a switch to select VC80/90 and then link to the correct
> libraries after "assembling" 
> a library name based on the switch.

I don't know what your end-users are (actual users, or application
developers?), but can't you just use the vc80 binaries if you are
building with MSVC++ 2005 and the vc90 ones if you are building with
MSVC++ 2008?

> A better approach would have been to use the standard names we are
> accustomed to:
> cairomm-1_0.lib, sigc-2_0.lib, gtkmm-2_4.lib, etc. and creating
> separate installers targeting
> the required runtime.

But that way it would still easily be possible to confuse the vc80 and
the vc90 DLLs if people don't 100% know what they are doing, which is
exactly what we tried to prevent with that naming convention.

>   The root of the installation tree would be the ONLY place where the
> runtime was indicated, e.g.:
> 
> C:\Program Files\Gtkmm-2.14.1-VC80
> 
> or
> 
> C:\Program Files\Gtkmm-2.14.1-VC90 
> 
> That way, you can easily point into the needed tree to link instead of
> having to rework
> build systems.
> 
> Also, I haven't built gtkmm from source since this changeover.  What
> naming convention
> do you use for the import libraries when building with MSVC?

The same. For example, gtkmm-vc80-2_4.lib.

>   Do you discover the runtime
> version automatically and name appropriately?

There is no need to discover anything at runtime. The MSVC 2005 project
files use the vc80 ones and the MSVC 2008 use the vc90 ones.

> Really would have preferred to see my approach above....

It would have been nice to know this before doing the work of changing
everything. Maybe I didn't make the plans clear enough. I'll try to do
better next time.

I don't know if this works, but would it be helpful in your case when we
could add the old .dlls and .libs back, but as a Windows shortcut to the
new vc80 ones?

Armin



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