From: Beule, F. <FB...@nd...> - 2007-01-31 15:07:32
|
As I told it in a previous message, it was also impossible for me to com= pile wxPerl even on Windows or on Linux. I still have the problem on L= inux and noone was able to help me here. Someone achieved this compilati= on on Mac OSX. Fortunately, there is a compiled binary of wxPerl in th= is website : http://www.gigi.co.uk/wxperl/ppm.html Enjoy ! PS: I= 'm still searching help for Linux compilation !!! Because of that we dec= ided to differ the launch of our Linux version. -----Message d'origine= ----- De : wxp...@li... [mailto:wxperl-use= rs-...@li...] De la part de Andrew Envoy=E9 : mercre= di 31 janvier 2007 12:04 =C0 : wxp...@li... Objet= : [wxperl-users] Problems compiling wxperl (windows/mingw) Hi, I am = having a few problems compiling wxPerl, and I was wondering if someone o= n this list could provide any help, perhaps by spotting something very s= imple that I am doing wrong. I am using the following software: Activ= ePerl 5.8.6 (build 811) MinGW 5.0.3 MSYS 1.0.10 nmake 1.50 dmake 2006= -06-16 (you can never have enough make programs, apparently) ExtUtils::F= akeConfig 0.05 wxPerl 0.67 (sources) wxWidgets-2.8.0 (sources) Alien::= wxWidgets 0.27 (sources) I have included some attachments: wxwidgets_= make.txt make output trying to build wxwidgets wxwidgets= _libraries.txt The libraries I built under wxwidgets-2.8.0/li= b msw_2_8_0_gcc_3_4.pm generated by Alien-wxWidgets-0.27.hax0red wx= -0.67_make.txt make output trying to build Wx-0.67 = Win32_hack.patch patch for Alien-wxWidgets-0.27/inc/M= y/Build/Win32.pm #####################################################= ################# # wxwidgets in docs/msw/install.txt under the MinGW= section, it says: # NOTE: The makefile.gcc makefiles are for compilat= ion under MinGW using # Windows command interpreter (command.com/cm= d.exe), they won't work in # other environments (such as UNIX or Un= ix-like, e.g. MSYS where you have # to use configure instead, see t= he section below) # # > cd c:\wx\build\msw # > make -f makefile.gcc = BUILD=3Ddebug The problem with this is I don't have a 'make' under win= dows. I have 'dmake' and 'nmake', and a C:\msys\1.0\bin\make.exe (but t= hat is part of MSYS). none of those seemed to work. See attachment "= wxwidgets_make.txt". So then I tried the configure script approach und= er MinGW: > export WXDIR=3D/d/build/wxWidgets-2.8.0 > cd $WXDIR > ./= configure --with-msw --enable-shared --enable-optimise --prefix=3D/d/opt/= wxWidgets-2.8.0 > make > make install > cd contrib/src/stc > make > = make install This worked. See attachment "wxwidgets_libraries.txt" fo= r the files that were build under $WXDIR/lib/. ######################= ################################################ # Alien::wxWidgets: = (in a dos shell) > set WXDIR=3DD:\build\wxWidgets-2.8.0 > set PERL5OPT=3D= -MConfig_m > set PATH=3DD:\opt\wxWidgets-2.8.0\bin;%PATH% > perl Build.= PL --with-msw --enable-shared --enable-optimise Do you want to build wxW= idgets? [no] no > perl Build Configuration error: could not find lib= raries for configuration: '' '28' at inc/My/Build/Win32.pm line 73. I= t seems the wxwidgets supplied makefiles (makefile.gcc etc) build librari= es in different places (lib/gcc_dll) than the makefiles generated by con= figure (lib). Also the files must be named slightly differently, as the = logic in Win32.pm didn't find them even when i copied them to the place = it was expecting (lib/gcc_dll). (copying wxwidgets files to the place= s they are expected, under MinGW) > cd $WXDIR > mkdir lib/gcc_dll > cp= lib/*.dll lib/*.a lib/gcc_dll > mkdir -p lib/gcc_dll/msw/wx > cp lib/w= x/include/msw-ansi-release-2.8/wx/setup.h lib/gcc_dll/msw/wx/ I then m= ade nasty hacks to Win32.pm (see attachment "Win32_hack.patch") and then= ended up with Alien-wxWidgets-0.27.hax0red. The config generated by thi= s is also attached - but I suspect there's something wrong with it. see= attachment "msw_2_8_0_gcc_3_4.pm". #################################= ##################################### # wxPerl (in a dos shell) > cd= D:\build\Wx-0.67 > set PERL5OPT=3D-MConfig_m > set WXDIR=3DD:\build\wx= Widgets-2.8.0 > perl Makefile.PL PREFIX=3DY:\Wx-2.8.0-0.67 here I get= many "Note (probably harmless): No library found for -l*" warnings > = dmake here I get a fatal error: C:/Perl/lib/CORE/win32.h:219: error: = redeclaration of C++ built-in type `int' C:/Perl/lib/CORE/win32.h:220: e= rror: redeclaration of C++ built-in type `int' Those lines are: typed= ef long uid_t; typedef long gid_t; so I commented those lines o= ut and tried again. > dmake see attachment "wx-0.67_make.txt" for t= he output. It looks like the relevant wxwidgets dll or .a is not being = passed to g++, so there are undefined references. I suspect this is bec= ause my hacked version of Alien::wxWidgets has generated an erroneous co= nfig file? I have tried disabling components, eg perl Makefile.PL --dis= able-richtext but I run into similar errors (undefined references) with = everything. Any suggestions or help you can provide would be much appr= eciated (about any stage of the process). cheers, Andrew *** NDS = US IT scanned this email for malicious content *** *** IMPORTANT: Do not= open attachments from unrecognized senders *** ***********************= ************************************************************ Information= contained in this email message is confidential and may be privileged, a= nd is intended only for use of the individual or entity named above. If t= he reader of this message is not the intended recipient, or the employee = or agent responsible to deliver it to the intended recipient, you are her= eby notified that any dissemination, distribution or copying of this comm= unication is strictly prohibited. If you have received this communication= in error, please immediately notify the pos...@nd... and destroy t= he original message. ***************************************************= ******************************** |