Re: [gtkdatabox] How to make a windows dll with mingw



Hi,

I've just pushed a commit to the cairo-alpha branch on sourceforge that enables generation of DLL's... should solve this problem.  At least, it works for me using mingw64 and mingw32 on fedora (cross compiling for windows on a linux box).

There were a few fixes needed:
1. stop calling pkg-config in Makefile.am since it used the native pkg-config instead of the cross-compiler's pkg-config.  Instead, use @GTK_CFLAGS@, since autoconf had already gone to the trouble of calling the right pkg-config.
2. add AC_LIBTOOL_WIN32_DLL before AM_PROG_LIBTOOL in configure.ac
3. add a -no-undefined flag to libgtkdatabox_la_LDFLAGS in gtk/Makefile.am

With only these changes, for me, after installing on fedora a number of packages for mingw32 and/or mingw64 (choose) (such as mingw32-gtk3, mingw32-glib2, mingw32-cairo, etc.), all I have to do is type
scripts/myAutoreconf.sh
mingw32_configure
make
and it generates everything. 

There is a NSIS installer generator feature that I need to look into...

Sincerely,
--
Amish

On 01/31/2013 08:55 AM, Brian Phelps wrote:
I think there is a way to convert a *.a library to a dll.  I do not know how and have had minimal experience with DLL's.  You may wanna try the Mingw list.  I wish I had more ways I could help here but I just don't have much experience with DLL's.

I believe this library will require you to have the exact version of GTK that the gtkdatabox was compiled under installed on the machine also.  I tried a static GTK databox build once on both Linux and windows and I got no where with it.  

Good luck and if you have success then send us your patch we will try to include it in the future releases.
----

Sent using Manchester encoded voltage pulses over a link to form packets which contain other higher level packets along with this message and signature which also contains the IP address to the destination and passing through many router links which may queue the packets at different amounts and possibly arrive out of order only to be reordered by the TCP/IP stack in the kernel of the recipient's server and displayed by a program running in userspace on the device you are currently looking at.


On Mon, Jan 28, 2013 at 11:44 PM, Hugh Sparks <hugh csparks com> wrote:
I was able to build gtkdatabox with ./configure, make, etc., using mingw, but the output consists of only an include and lib directory.
This is what I get after "make install":

        include/...
        lib/
                pkgconfig/
                        gtkdatabox.pc
                gtkdatabox.la
                gtkdatabox.a

I would like to create a windows dll and I was expecting that
"make install" would create something like this:

        bin/
                gtkdatabox.dll
        include/...
        lib/
                pkgconfig/
                        gtkdatabox.pc
                gtkdatabox.dll.a

Is there an option to ./configure that would have make produce the dll?
I tried --enable-shared without success. I want to produce a gtkdatabox.zip archive that will unpack like the pre-built binary versions of gtkdatabox. I though perhaps there was some way ./configure could do that... If not, how should the dll be produced?

Thanks,

-H Sparks

--
Mail: hugh csparks com
Office: 952-955-2800
Mobile: 612-247-2714
_______________________________________________
gtkdatabox-list mailing list
gtkdatabox-list gnome org
https://mail.gnome.org/mailman/listinfo/gtkdatabox-list



_______________________________________________
gtkdatabox-list mailing list
gtkdatabox-list gnome org
https://mail.gnome.org/mailman/listinfo/gtkdatabox-list



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