Re: [gtkmm] Re: [sigc] Building libsigc++ under Win32 for use with Intel C++ Compiler 6.0



Cedric Gustin wrote:

> At 07:47 AM 11/6/2002 +0000, Dirk Gerrits wrote:
>
> > My goal is to be able to create Windows apps using gtkmm2. I'd like to
> > be able to use Intel6 for this which is a pretty nice compiler and
> > integrates seamlessly into Visual Studio .Net.
>
>
> I don't have access to the Intel compiler but last time I tried MSVC++
> could not compile libsigc++ due to a "partial template specialization"
> if I remember correctly

Intel supports PTS and integrates seamlessly into Visual Studio.

>
> > Someone replied to my gtkmm-list post privately (not sure if he wants
> > to remain anonymous) saying that the libraries should be compatible
> > with MSVC and Intel if they are compiled using -mms-bitfields with
> > GCC/MinGW.
>
>
> -mms-bitfields (the old -fnative-struct) makes the gtk+-2.0 library
> compatible between MSVC and mingw because the C compiler does not
> mangle the function names, unlike C++ (except if you use extern "C"
> around all your declarations !!!). I don't think MSVC++ and mingw
> share the same name mangling scheme.

I don't really know about this. But if gtkmm2 can't be made to run for Intel6 under Win32, I gues I'll just have to settle for MinGW. However, there are two issues with that for me: 1) Intel integrates seamlessly into Visual Studio .Net which is a very nice IDE IMHO. 2) I might need to use some Windows specific libraries in the future, which use MSVC/Intel name mangling.

> > So, armed with all the information I gathered from your helpful email
> > and some Googling, I did the following:
> >
> > 1) Installed MinGW-2.0.0-3 to C:\MinGW.
> >
> > 2) Ran Cygwin's setup.exe and made it download and install ALL
> > available packages
> > from the ftp://ftp.sunsite.dk/ mirror to C:\cygwin. (I figured that
> > this would
> > give me the least dependency problems, and I've got the harddisk
> > space. ;)
> >
> > 3) Edited C:\cygwin\etc\profile for MinGW:
> > PATH="/cygdrive/c/MinGW/bin:/usr/local/bin:/usr/bin:/bin:$PATH"
> >
> > 4) Changed line 5363 of
> > C:\cygwin\usr\autotool\devel\share\aclocal\libtool.m4
> > and line 2956 of
> > C:\cygwin\usr\autotool\stable\share\aclocal\libtool.m4 from:
> > #       printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
> > to:
> > #       printf ("\t\"%s\" @ %ld ;\n", erva+name_rva, 1+ i);
>
>
> I don't know if the development brach of the autotools from cygwin
> will work in our case. I personally compiled the latest stable release
> of those tools (autoconf-2.52, automake-1.6.1, libtool-1.4.2 and
> modified libtool.m4 as you did.

Well having both the devel and stable is probably an artifact from
selecting ALL packages. ;)

>
>
> > As described in http://bugzila.gnome.org/show_bug.cgi?id=91033
> > (Did I do this right? I thought # indicated a comment?)
> >
> > 5) Downloaded and unzipped all of the following files (with use folder
> > names and overwrite all)
> > 5a) From http://www.gimp.org/win32:
> > atk-1.0.3-20020821.zip
> > atk-dev-1.0.3-20020821.zip
> > glib-2.0.6-20020802.zip
> > glib-2.0.6.tar.gz
> > glib-dev-2.0.6-20020802.zip
> > gtk+-1.3.0-20020922.zip
> > gtk+-2.0.6-20020921.zip
> > gtk+-dev-1.3.0-20020912.zip
> > gtk+-dev-2.0.6-20020921.zip
>
>
> You installed both gtk-1.2 (gtk+-1.3.0 brach) and gtk+-2.0 (gtk+-2.0.x
> branch). I don't know if they work nicely together, especially if they
> were installed in the same root directory !!! If I was you, I would
> install the gtk+-2.0.x libs only and try to compile a simple gtk+-2.0
> example.

Ah check.

>
>
> > 5b) From http://www.pcpm.ucl.ac.be/~gustin/win32_ports:
> > libsigc++-1.2.1-win32.tar.gz
> > gtkmm-2.0.0-win32.tar.gz
> >
> > (Maybe this is overkill? And perhaps I downgraded some of the cygwin
> > packages? But trying to build this stuff myself has invoked a bad  case
> > of dependency-paranoia. After all this my cygwin dir is 883 MB though.)
>
>
> If you install the full cygwin, you might get conflicts with cygwin
> libraries when using libtool. An example I frequently encountered is
> the libintl and iconv libraries. When possible, libtool looks for .la
> files. Because libintl and iconv do not come with those .la files (or
> they are broken). libtool reverts to the .la files from cygwin -> you
> get a bunch of undefined symbols and other errrors at link time.

Ok, I'll just uninstall cygwin and start over. Just tell me *exactly*
which Cygwin packages I need to install.

 From the gimp site and your site I have:
atk-1.0.3-20020821.zip
atk-dev-1.0.3-20020821.zip
freetype-2.1.2-1-lib.zip
freetype-2.1.2-bin.zip
gettext-0.11.2-w32.bin.zip
gettext-dev-0.10.40-20020904.zip
glib-2.0.6-20020802.zip
glib-2.0.6.tar.gz
glib-dev-2.0.6-20020802.zip
gtk+-2.0.6-20020921.zip
gtk+-dev-2.0.6-20020921.zip
gtkmm-2.0.0-win32.tar.gz
libiconv-1.7-w32.bin.zip
libintl-0.10.40-tml-20020904.zip
libjpeg-6b-lib.zip
libpng-1.2.4-1-lib.zip
libsigc++-1.2.1-win32.tar.gz
pango-1.0.4-20020928.zip
pango-dev-1.0.4-20020928.zip
pkgconfig-0.13.zip
tiff-3.5.7-bin.zip
tiff-3.5.7-lib.zip
zlib-1.1.4-bin.zip
zlib-1.1.4-lib.zip
Can I ditch any of these, or are they all necessary?

Perhaps a step-by-step guide on getting started with gtkmm2 with Windows could be put up at the gtkmm2 site? I have some rudimentary Linux experience and I couldn't have figured things out without these mailing lists. How would someone without any Linux experience at all use gtkmm2 under Windows?

Kind regards,

Dirk Gerrits





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