> Hi,
>
> I thought it'd be nice to share my experiences on building wxPerl 0.10
> on Linux against wxWindows 2.3.2 (Gtk) (latest development) from source.
> 1. Trying to install the wxWindows 2.3.2 rpm does not install wx-config,
> so the installation of wxPerl fails on that
You need the -dev RPM to compile wxPerl; it contains the wx-config,
and most important the headers
> 2. Downloading the wxWindows sources and building them does not install
> the contrib/wx/xrc directory so you have to manually copy it to the
> include directory.
You can also disable XRC ( comment it out in Makefile.PL ); unless, of course,
you need XRC
> 3. Building wxPerl 0.10 gives an error on line 4792 in Controls.c
> saying:
> Controls.c: In function `void XS_Wx__RadioBox_SetString (CV *)':
> Controls.c:4792: no matching function for call to
> `wxRadioBox::SetString (int &, wxString &)'
> make: *** [Controls.o] Error 1
> Changing that line to this:
> #if WXPERL_W_VERSION_GE( 2, 3, 3 ) \
> || ( WXPERL_W_VERSION_GE( 2, 3, 2 ) && !defined(__WXGTK__) ) \
> || defined(__WXUNIVERSAL__) \
> || defined( __WXPERL_FORCE__ )
> THIS->SetString( n, label );
> #else
> THIS->SetLabel( n, label );
> #endif
> makes that file compile without problems
I think it is corrected in CVS, will check
> 4. Now I'm running into problems compiling Frames.c, but I don't have
> any more time today. Monday will continue this quest....For people
> having done this before, this is my latest output:
I'm sorry for your wasted time. I'll test if CVS compiles with 2.3.2
> c++ -c -I/usr/local/lib/wx/include/gtk-2.3 -I/usr/local/include -I.
> -fno-rtti -fno-exceptions -O2 -march=i386 -mcpu=i686
> -DVERSION=\"0.10\" -DXS_VERSION=\"0.10\" -fPIC
> -I/usr/lib/perl5/5.6.1/i386-linux/CORE -DGTK_NO_CHECK_CASTS -D__WXGTK__
> -D_REENTRANT Frames.c
> XS/FontDialog.xs: In function `void XS_Wx_GetFontFromUser (CV *)':
> XS/FontDialog.xs:111: `wxGetFontFromUser' undeclared (first use this
> function)
> XS/FontDialog.xs:111: (Each undeclared identifier is reported only once
> for each function it appears in.)
> Frames.c: In function `void XS_Wx__DirDialog_new (CV *)':
> Frames.c:4488: invalid use of undefined type `class Wx_DirDialog'
> cpp/typedef.h:148: forward declaration of `class Wx_DirDialog'
> Frames.c:4490: cannot convert `Wx_DirDialog *' to `wxObject *' for
> argument `2' to `wxPli_object_2_sv (SV *, wxObject *)'
> Frames.c: In function `void XS_Wx__DirDialog_GetPath (CV *)':
> Frames.c:4507: invalid use of undefined type `class wxGenericDirDialog'
> cpp/typedef.h:148: forward declaration of `class wxGenericDirDialog'
> Frames.c: In function `void XS_Wx__DirDialog_GetMessage (CV *)':
> Frames.c:4526: invalid use of undefined type `class wxGenericDirDialog'
> cpp/typedef.h:148: forward declaration of `class wxGenericDirDialog'
> Frames.c: In function `void XS_Wx__DirDialog_GetStyle (CV *)':
> Frames.c:4546: invalid use of undefined type `class wxGenericDirDialog'
> cpp/typedef.h:148: forward declaration of `class wxGenericDirDialog'
> Frames.c: In function `void XS_Wx__DirDialog_SetMessage (CV *)':
> Frames.c:4565: invalid use of undefined type `class wxGenericDirDialog'
> cpp/typedef.h:148: forward declaration of `class wxGenericDirDialog'
> Frames.c: In function `void XS_Wx__DirDialog_SetPath (CV *)':
> Frames.c:4583: invalid use of undefined type `class wxGenericDirDialog'
> cpp/typedef.h:148: forward declaration of `class wxGenericDirDialog'
> Frames.c: In function `void XS_Wx__DirDialog_SetStyle (CV *)':
> Frames.c:4599: invalid use of undefined type `class wxGenericDirDialog'
> cpp/typedef.h:148: forward declaration of `class wxGenericDirDialog'
> Frames.c: In function `void XS_Wx__DirDialog_ShowModal (CV *)':
> Frames.c:4616: invalid use of undefined type `class wxGenericDirDialog'
> cpp/typedef.h:148: forward declaration of `class wxGenericDirDialog'
> make: *** [Frames.o] Error 1
Regards
Mattia
|