From: Dan F. <win...@gm...> - 2007-01-18 22:40:35
|
Has anyone managed to compile the .67 wxPerl release against wxWidgets 2.8.0? I am attempting to build it on a OS X machine, but I would image the part that I am getting hung up on would be the same on any UNIX like machine. The issue (I think) is that the Makefile.PL script refuses to accept the wx-version=2.8 flag. The only thing it appears to be able to accept is 2.5 for some reason. If I don't specify the flag at all, it thinks I am using 2.5 and looks for the wrong libraries. I've removed my 2.5 wxWidgets libraries out of /usr/lib and /usr/include completely, then installed 2.8. I'm at a loss. Does anyone have any ideas? Thanks, Dan Freed |
From: Mark D. <mar...@zn...> - 2007-01-18 23:28:23
|
Have you installed Alien::wxWidgets? You need to do this first. Regards Mark Dan Freed wrote: > Has anyone managed to compile the .67 wxPerl release against wxWidgets 2.8.0? > > I am attempting to build it on a OS X machine, but I would image the > part that I am getting hung up on would be the same on any UNIX like > machine. > > The issue (I think) is that the Makefile.PL script refuses to accept > the wx-version=2.8 flag. The only thing it appears to be able to > accept is 2.5 for some reason. If I don't specify the flag at all, it > thinks I am using 2.5 and looks for the wrong libraries. I've removed > my 2.5 wxWidgets libraries out of /usr/lib and /usr/include > completely, then installed 2.8. > > I'm at a loss. > > Does anyone have any ideas? > > Thanks, > Dan Freed > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys - and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > wxperl-users mailing list > wxp...@li... > https://lists.sourceforge.net/lists/listinfo/wxperl-users |
From: Dan F. <win...@gm...> - 2007-01-18 23:36:15
|
Thanks, but yes I have Alien::wxWidgets .27 installed. It did complain about having .24 initially, but I upgraded Alien after that. What is interesting is that I'm not sure how it is deciding what version of wx is installed. wx-config --list shows: Default config is mac-ansi-release-static-2.8 Thanks, Dan Freed On 1/18/07, Mark Dootson <mar...@zn...> wrote: > Have you installed Alien::wxWidgets? > > You need to do this first. > > Regards > > Mark > > > Dan Freed wrote: > > Has anyone managed to compile the .67 wxPerl release against wxWidgets 2.8.0? > > > > I am attempting to build it on a OS X machine, but I would image the > > part that I am getting hung up on would be the same on any UNIX like > > machine. > > > > The issue (I think) is that the Makefile.PL script refuses to accept > > the wx-version=2.8 flag. The only thing it appears to be able to > > accept is 2.5 for some reason. If I don't specify the flag at all, it > > thinks I am using 2.5 and looks for the wrong libraries. I've removed > > my 2.5 wxWidgets libraries out of /usr/lib and /usr/include > > completely, then installed 2.8. > > > > I'm at a loss. > > > > Does anyone have any ideas? > > > > Thanks, > > Dan Freed > > > > ------------------------------------------------------------------------- > > Take Surveys. Earn Cash. Influence the Future of IT > > Join SourceForge.net's Techsay panel and you'll get the chance to share your > > opinions on IT & business topics through brief surveys - and earn cash > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > > wxperl-users mailing list > > wxp...@li... > > https://lists.sourceforge.net/lists/listinfo/wxperl-users > > > |
From: Mark D. <mar...@zn...> - 2007-01-18 23:52:16
|
I'm just stabbing in the dark as I only built on OSX a couple of times and it just worked out of the box for me - but I think it is Alien that returns the wxWidgets libs and locations to the Wx build. Therefore, my guess is that you have a prior build being picked up by default. As I don't know the 'clean' way to deal with this, I would just delete my Alien::wxWidgets paths from my INC directories and install that again. There are a few folks who regularly contribute to the list who build on OSX and I'm sure they'll point you in the right direction when they next view the list. However, cleaning up and re-installing Alien::wxWidgets is worth a try for sure. Mark Dan Freed wrote: > Thanks, but yes I have Alien::wxWidgets .27 installed. > > It did complain about having .24 initially, but I upgraded Alien after > that. > > What is interesting is that I'm not sure how it is deciding what > version of wx is installed. wx-config --list shows: Default config is > mac-ansi-release-static-2.8 > > Thanks, > Dan Freed > > > On 1/18/07, Mark Dootson <mar...@zn...> wrote: >> Have you installed Alien::wxWidgets? >> >> You need to do this first. >> >> Regards >> >> Mark >> >> >> Dan Freed wrote: >> > Has anyone managed to compile the .67 wxPerl release against >> wxWidgets 2.8.0? >> > >> > I am attempting to build it on a OS X machine, but I would image the >> > part that I am getting hung up on would be the same on any UNIX like >> > machine. >> > >> > The issue (I think) is that the Makefile.PL script refuses to accept >> > the wx-version=2.8 flag. The only thing it appears to be able to >> > accept is 2.5 for some reason. If I don't specify the flag at all, it >> > thinks I am using 2.5 and looks for the wrong libraries. I've removed >> > my 2.5 wxWidgets libraries out of /usr/lib and /usr/include >> > completely, then installed 2.8. >> > >> > I'm at a loss. >> > >> > Does anyone have any ideas? >> > >> > Thanks, >> > Dan Freed >> > >> > >> ------------------------------------------------------------------------- >> > Take Surveys. Earn Cash. Influence the Future of IT >> > Join SourceForge.net's Techsay panel and you'll get the chance to >> share your >> > opinions on IT & business topics through brief surveys - and earn cash >> > >> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >> > _______________________________________________ >> > wxperl-users mailing list >> > wxp...@li... >> > https://lists.sourceforge.net/lists/listinfo/wxperl-users >> >> >> |
From: Daniell F. <win...@gm...> - 2007-01-19 03:20:48
|
It looks like you are right. But it also looks like Alien::wxWidgets hasn't been updated to support wxWidgets 2.8. I just checked the latest out from CVS and it only has code in it for 2.6.3. Bummer... Thanks, Dan Freed On Jan 18, 2007, at 5:51 PM, Mark Dootson wrote: > I'm just stabbing in the dark as I only built on OSX a couple of times > and it just worked out of the box for me - but I think it is Alien > that > returns the wxWidgets libs and locations to the Wx build. > Therefore, my > guess is that you have a prior build being picked up by default. As I > don't know the 'clean' way to deal with this, I would just delete my > Alien::wxWidgets paths from my INC directories and install that again. > > There are a few folks who regularly contribute to the list who > build on > OSX and I'm sure they'll point you in the right direction when they > next > view the list. > > However, cleaning up and re-installing Alien::wxWidgets is worth a try > for sure. > > > Mark > > > > > > Dan Freed wrote: >> Thanks, but yes I have Alien::wxWidgets .27 installed. >> >> It did complain about having .24 initially, but I upgraded Alien >> after >> that. >> >> What is interesting is that I'm not sure how it is deciding what >> version of wx is installed. wx-config --list shows: Default >> config is >> mac-ansi-release-static-2.8 >> >> Thanks, >> Dan Freed >> >> >> On 1/18/07, Mark Dootson <mar...@zn...> wrote: >>> Have you installed Alien::wxWidgets? >>> >>> You need to do this first. >>> >>> Regards >>> >>> Mark >>> >>> >>> Dan Freed wrote: >>>> Has anyone managed to compile the .67 wxPerl release against >>> wxWidgets 2.8.0? >>>> >>>> I am attempting to build it on a OS X machine, but I would image >>>> the >>>> part that I am getting hung up on would be the same on any UNIX >>>> like >>>> machine. >>>> >>>> The issue (I think) is that the Makefile.PL script refuses to >>>> accept >>>> the wx-version=2.8 flag. The only thing it appears to be able to >>>> accept is 2.5 for some reason. If I don't specify the flag at >>>> all, it >>>> thinks I am using 2.5 and looks for the wrong libraries. I've >>>> removed >>>> my 2.5 wxWidgets libraries out of /usr/lib and /usr/include >>>> completely, then installed 2.8. >>>> >>>> I'm at a loss. >>>> >>>> Does anyone have any ideas? >>>> >>>> Thanks, >>>> Dan Freed >>>> >>>> >>> -------------------------------------------------------------------- >>> ----- >>>> Take Surveys. Earn Cash. Influence the Future of IT >>>> Join SourceForge.net's Techsay panel and you'll get the chance to >>> share your >>>> opinions on IT & business topics through brief surveys - and >>>> earn cash >>>> >>> http://www.techsay.com/default.php? >>> page=join.php&p=sourceforge&CID=DEVDEV >>>> _______________________________________________ >>>> wxperl-users mailing list >>>> wxp...@li... >>>> https://lists.sourceforge.net/lists/listinfo/wxperl-users >>> >>> >>> > > Daniell Freed win...@gm... Bereshit bara Elohim et hashamayim ve'et ha'arets... |
From: Beule, F. <FB...@nd...> - 2007-01-19 14:01:35
|
> It looks like you are right. But it also looks like Alien::wxWidgets h= asn't been updated > to support wxWidgets 2.8. > > I just checked the= latest out from CVS and it only has code in it for 2.6.3. > > Bummer= ... Hi, Be sure that the goal of my message is to make things bette= r... But I'm wondering if it's really possible to compile wxPerl ? = I'm asking the question because of my experience and the messages of tod= ay... On the official website, you can only access to the sources of t= he module wxPerl but not to the tutorials of how to install it (a worki= ng one !!!) and worst not the dependent modules that are needing. I'= m starting to think that this lack is due to the complexity (or the impo= ssibility ?) to do it. I spend 3 days to try to compile it on windows= . I read lot of documentations but didn't find any one good. Fortuna= tely, I was saved by someone in this list who indicated me that there is= an unofficial website who proposes the binaries for windows. It worked= fine and I was happy for that because I could efficiently work on my d= evelopments. Why this link is not proposed in the official website? I = don't know. It's a big lack I think. After, I asked to my collegues t= o install the Linux version of wxPerl. They also failed (It's definitive= ly not me the problem). We are still searching a way to compile wxPerl= on Linux ! And now, it's the turn of one member in the list for Mac O= S. I just learn today that Alien::wxWidgets who is required (you disco= ver that when you compile) is not up to date for wxWidgets 2.8.0 despit= e wxPerl is. How it's possible that the guy who updated wxPerl for wxW= idgets 2.8.0 could compile if the required Alien::wxWidgets is not up = to date ? And for my conclusion, if it's hard to compile on Windows (s= omeone succeded on this task, but he didn't explained how) and impossib= le to compile on Linux and MacOSX, does someone really use wxPerl ??? = PS: My dev on wxPerl is the first one with a graphical interface and I = choosed it because of it's interoperability between Unix and Windows. No= w my dev is near finished, working on windows and I'm still unable to s= tart it on Linux. I'm wondering if I made the good choice of choosing s= uch an uncompilable solution... If someone can answers... **********= *************************************************************************= Information contained in this email message is confidential and may be = privileged, and is intended only for use of the individual or entity name= d above. If the reader of this message is not the intended recipient, or = the employee or agent responsible to deliver it to the intended recipient= , you are hereby notified that any dissemination, distribution or copying= of this communication is strictly prohibited. If you have received this = communication in error, please immediately notify the pos...@nd... = and destroy the original message. **************************************= ********************************************* |
From: Eric W. <scr...@gm...> - 2007-01-19 20:53:20
|
# from Beule, Franck # on Friday 19 January 2007 06:01 am: >And for my conclusion, if it's hard to compile on Windows (someone >succeded on this task, >but he didn't explained how) and impossible to compile on Linux and >MacOSX, >does someone really use wxPerl ??? Yes, it is quite possible. No, it is not easy. IME, Alien::WxWidgets can be a bit of a pain. I've not managed to successfully compile on windows, but getting the right tools installed on windows is a huge pain. I built wxGTK on linux without any trouble, but Alien::WxWidgets is still a speed-bump there. The mac works too, though getting it built as a universal binary is a huge pain because apple decided to put too much of the smarts into xcode and CPAN isn't having any of that. Which is why dotReader has to provide out-of-the-box bundles for all three platforms. That's not easy. Dependency scanning is the current speedbump. Consider the challenges: o compiling wxWidgets without user intervention (Alien) o compatibility with multiple wxWidgets versions o compatibility with multiple perl versions o various flaky windows environments (make, nmake, gcc, cc.exe, etc) o compatibility with multiple mac versions (mac testing is expensive: 1 OS per machine, no virtualizing, and apple end-of-lifes the old xcode on day one of the next OS) And that's just the overhead to developing the perl binding. Unfortunately, until more people pitch in to strawberry perl, automated cross-platform testing, etc, this isn't going to get easier for end-users either. wxPerl itself is very well done, but these huge barriers to entry make it hard to test, let alone contribute. IMNSHO, the spam on this list doesn't help much. The wiki is also a bit slow from this part of the world. I think wxPerl's users, code, and documentation would really benefit from moving to the perl.org infrastructure (mail, svn, probably even hosting.) --Eric -- "Matter will be damaged in direct proportion to its value." --Murphy's Constant --------------------------------------------------- http://scratchcomputing.com --------------------------------------------------- |
From: Daniell F. <win...@gm...> - 2007-01-20 03:07:14
|
I don't think it is the case that we (or at least I) don't appreciate the huge effort it takes to develop and maintain wxPerl. I certainly haven't had any problems compiling wxWidgets itself. It and the sample code with it seems to compile and work without problem. The challenge is with getting Alien/wxPerl to work. At least that is were I struggle with it. What is dotReader? dotreader.com is a e-book reader site. Is there a distribution for wxPerl available there somewhere? Thanks, Dan Freed On Jan 19, 2007, at 2:53 PM, Eric Wilhelm wrote: > # from Beule, Franck > # on Friday 19 January 2007 06:01 am: > >> And for my conclusion, if it's hard to compile on Windows (someone >> succeded on this task, >> but he didn't explained how) and impossible to compile on Linux and >> MacOSX, >> does someone really use wxPerl ??? > > Yes, it is quite possible. No, it is not easy. IME, Alien::WxWidgets > can be a bit of a pain. I've not managed to successfully compile on > windows, but getting the right tools installed on windows is a huge > pain. I built wxGTK on linux without any trouble, but > Alien::WxWidgets > is still a speed-bump there. The mac works too, though getting it > built as a universal binary is a huge pain because apple decided to > put > too much of the smarts into xcode and CPAN isn't having any of that. > > Which is why dotReader has to provide out-of-the-box bundles for all > three platforms. That's not easy. Dependency scanning is the current > speedbump. > > Consider the challenges: > > o compiling wxWidgets without user intervention (Alien) > o compatibility with multiple wxWidgets versions > o compatibility with multiple perl versions > o various flaky windows environments (make, nmake, gcc, cc.exe, etc) > o compatibility with multiple mac versions > (mac testing is expensive: 1 OS per machine, no virtualizing, > and apple end-of-lifes the old xcode on day one of the next OS) > > And that's just the overhead to developing the perl binding. > Unfortunately, until more people pitch in to strawberry perl, > automated > cross-platform testing, etc, this isn't going to get easier for > end-users either. wxPerl itself is very well done, but these huge > barriers to entry make it hard to test, let alone contribute. > > IMNSHO, the spam on this list doesn't help much. The wiki is also > a bit > slow from this part of the world. I think wxPerl's users, code, and > documentation would really benefit from moving to the perl.org > infrastructure (mail, svn, probably even hosting.) > > --Eric > -- > "Matter will be damaged in direct proportion to its value." > --Murphy's Constant > --------------------------------------------------- > http://scratchcomputing.com > --------------------------------------------------- > > ---------------------------------------------------------------------- > --- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to > share your > opinions on IT & business topics through brief surveys - and earn cash > http://www.techsay.com/default.php? > page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > wxperl-users mailing list > wxp...@li... > https://lists.sourceforge.net/lists/listinfo/wxperl-users Daniell Freed win...@gm... Bereshit bara Elohim et hashamayim ve'et ha'arets... |
From: Eric W. <scr...@gm...> - 2007-01-20 04:22:49
|
# from Daniell Freed # on Friday 19 January 2007 07:07 pm: >dotreader.com is a e-book reader site. That's right. It's written in wxPerl. >Is there =A0=20 >a distribution for wxPerl available there somewhere? No, but I've been considering breaking our pars into multiple pieces. =20 Currently it is perl, core, wx, wx, wx, and everything else in one par. =2D-Eric =2D-=20 "If you dig it, it's yours." =2D-An old village poet (via Al Pacino) =2D-------------------------------------------------- http://scratchcomputing.com =2D-------------------------------------------------- |
From: Daniell F. <win...@gm...> - 2007-01-20 05:28:48
|
Just to continue my saga to figure out how to compile wxPerl on OS X, I think I have figured out a least partially way I can't get past the Makefile.PL stage. I am getting errors like: No such 'link' library: 'adv' at /Users/dfreed/sourcecode/WxPerl-0.67/ build/Wx/build/MakeMaker.pm line 206 When running this stage. I ran this through the debugger, and it appears that wxPerl is expecting to find libs like: adv, core, base, html when calling Alien::wxWidgets->libraries, at least the Makefile.PL script is passing a list of names like this to that Alien function. When I dug into what was going on in Alien::wxWidgets, I see that it has a file: /Library/Perl/5.8.6/darwin-thread- multi-2level/Alien/wxWidgets/Config/mac_2_8_0_gcc_3_4.pm which appears to be generated when Alien::wxWidgets is built. This file defines a hash that contains wx-config information in it. The keys of the _libraries hash are all a single letter for example: '_libraries' => { 'e' => { 'link' => '-lwx_mac_core-2.8', 'dll' => 'libwx_mac_core-2.8.dylib' }, 'c' => { 'link' => '-lwx_mac_xrc-2.8', 'dll' => 'libwx_mac_xrc-2.8.dylib' }, 'e' => { 'link' => '-lwx_base_carbon-2.8', 'dll' => 'libwx_base_carbon-2.8.dylib' }, .... But it looks like the wxPerl is passing it keys like 'core' and 'xrc', etc. Somehow the hash keys appear to only be the last letter of the library name. I didn't dig to see why that is. There were also several important libraries not in the hash at all. After hand editing the file to this: '_libraries' => { 'core' => { 'link' => '-lwx_mac_core-2.8', 'dll' => 'libwx_mac_core-2.8.dylib' }, 'xrc' => { 'link' => '-lwx_mac_xrc-2.8', 'dll' => 'libwx_mac_xrc-2.8.dylib' }, 'base' => { 'link' => '-lwx_base_carbon-2.8', 'dll' => 'libwx_base_carbon-2.8.dylib' }, 'qa' => { 'link' => '-lwx_mac_qa-2.8', 'dll' => 'libwx_mac_qa-2.8.dylib' }, 'adv' => { 'link' => '-lwx_mac_adv-2.8', 'dll' => 'libwx_mac_adv-2.8.dylib' }, 'aui' => { 'link' => '-lwx_mac_aui-2.8', 'dll' => 'libwx_mac_aui-2.8.dylib' }, 'richtext' => { 'link' => '-lwx_mac_richtext-2.8', 'dll' => 'libwx_mac_richtext-2.8.dylib' }, 'html' => { 'link' => '-lwx_mac_html-2.8', 'dll' => 'libwx_mac_html-2.8.dylib' }, 'net' => { 'link' => '- lwx_base_carbon_net-2.8', 'dll' => 'libwx_base_carbon_net-2.8.dylib' }, 'xml' => { 'link' => '- lwx_base_carbon_xml-2.8', 'dll' => 'libwx_base_carbon_xml-2.8.dylib' }, 'stc' => { 'link' => '-lwx_mac_stc-2.8', 'dll' => 'libwx_mac_stc-2.8.dylib' }, }, I can now run perl Makefile.PL to completion and build wxPerl. I'm still having some problems. Just loading the Wx module is now causing an error: $ wxperl use Wx; Can't load '/Library/Perl/5.8.6/darwin-thread-multi-2level/auto/Wx/ Wx.bundle' for module Wx: dlopen(/Library/Perl/5.8.6/darwin-thread- multi-2level/auto/Wx/Wx.bundle, 1): Symbol not found: __ZTV11wxMediaCtrl Referenced from: /Library/Perl/5.8.6/darwin-thread-multi-2level/ auto/Wx/Wx.bundle Expected in: dynamic lookup at - line 1 Compilation failed in require at - line 1. BEGIN failed--compilation aborted at - line 1. I'm not sure what the heck this is about. But I am closing in... If anyone has anything thoughts that would help, they would be very much appreciated. Thanks, Dan Freed On Jan 19, 2007, at 2:53 PM, Eric Wilhelm wrote: > # from Beule, Franck > # on Friday 19 January 2007 06:01 am: > >> And for my conclusion, if it's hard to compile on Windows (someone >> succeded on this task, >> but he didn't explained how) and impossible to compile on Linux and >> MacOSX, >> does someone really use wxPerl ??? > > Yes, it is quite possible. No, it is not easy. IME, Alien::WxWidgets > can be a bit of a pain. I've not managed to successfully compile on > windows, but getting the right tools installed on windows is a huge > pain. I built wxGTK on linux without any trouble, but > Alien::WxWidgets > is still a speed-bump there. The mac works too, though getting it > built as a universal binary is a huge pain because apple decided to > put > too much of the smarts into xcode and CPAN isn't having any of that. > > Which is why dotReader has to provide out-of-the-box bundles for all > three platforms. That's not easy. Dependency scanning is the current > speedbump. > > Consider the challenges: > > o compiling wxWidgets without user intervention (Alien) > o compatibility with multiple wxWidgets versions > o compatibility with multiple perl versions > o various flaky windows environments (make, nmake, gcc, cc.exe, etc) > o compatibility with multiple mac versions > (mac testing is expensive: 1 OS per machine, no virtualizing, > and apple end-of-lifes the old xcode on day one of the next OS) > > And that's just the overhead to developing the perl binding. > Unfortunately, until more people pitch in to strawberry perl, > automated > cross-platform testing, etc, this isn't going to get easier for > end-users either. wxPerl itself is very well done, but these huge > barriers to entry make it hard to test, let alone contribute. > > IMNSHO, the spam on this list doesn't help much. The wiki is also > a bit > slow from this part of the world. I think wxPerl's users, code, and > documentation would really benefit from moving to the perl.org > infrastructure (mail, svn, probably even hosting.) > > --Eric > -- > "Matter will be damaged in direct proportion to its value." > --Murphy's Constant > --------------------------------------------------- > http://scratchcomputing.com > --------------------------------------------------- > > ---------------------------------------------------------------------- > --- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to > share your > opinions on IT & business topics through brief surveys - and earn cash > http://www.techsay.com/default.php? > page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > wxperl-users mailing list > wxp...@li... > https://lists.sourceforge.net/lists/listinfo/wxperl-users Daniell Freed win...@gm... Bereshit bara Elohim et hashamayim ve'et ha'arets... |
From: Daniell F. <win...@gm...> - 2007-01-20 06:02:12
|
Well I have it working! So it is doable. I am now running wxPerl .67 using wxWidgets 2.8.0. The error I mentioned below was caused because I had rebuilt wxWidgets with MediaCtrl, then rebuilt wxPerl to support it. I had to add: 'media' => { 'link' => '-lwx_mac_media-2.8', 'dll' => 'libwx_mac_media-2.8.dylib' }, to the below mentioned hash. When I did the make install, it didn't replace everything, like the Wx.bundle. Cleaning up the previous attempt and installing clean fix the error. I hope this will help other that are having problems building wxPerl on OSX. If I can figure out how to make an OS X package for the setup, I'll build one and submit it to be posted on the wxperl site for others to use -- no promises. I've never tried making one of the packages. Thanks, Dan Freed On Jan 19, 2007, at 11:28 PM, Daniell Freed wrote: > Just to continue my saga to figure out how to compile wxPerl on OS > X, I think I have figured out a least partially way I can't get > past the Makefile.PL stage. > > I am getting errors like: > No such 'link' library: 'adv' at /Users/dfreed/sourcecode/ > WxPerl-0.67/build/Wx/build/MakeMaker.pm line 206 > > When running this stage. I ran this through the debugger, and it > appears that wxPerl is expecting to find libs like: adv, core, > base, html when calling Alien::wxWidgets->libraries, at least the > Makefile.PL script is passing a list of names like this to that > Alien function. When I dug into what was going on in > Alien::wxWidgets, I see that it has a file: /Library/Perl/5.8.6/ > darwin-thread-multi-2level/Alien/wxWidgets/Config/ > mac_2_8_0_gcc_3_4.pm which appears to be generated when > Alien::wxWidgets is built. This file defines a hash that contains > wx-config information in it. The keys of the _libraries hash are > all a single letter for example: > > '_libraries' => { > 'e' => { > 'link' => '-lwx_mac_core-2.8', > 'dll' => > 'libwx_mac_core-2.8.dylib' > }, > 'c' => { > 'link' => '-lwx_mac_xrc-2.8', > 'dll' => > 'libwx_mac_xrc-2.8.dylib' > }, > 'e' => { > 'link' => '-lwx_base_carbon-2.8', > 'dll' => > 'libwx_base_carbon-2.8.dylib' > }, > .... > > But it looks like the wxPerl is passing it keys like 'core' and > 'xrc', etc. Somehow the hash keys appear to only be the last > letter of the library name. I didn't dig to see why that is. > There were also several important libraries not in the hash at > all. After hand editing the file to this: > > '_libraries' => { > 'core' => { > 'link' => '-lwx_mac_core-2.8', > 'dll' => > 'libwx_mac_core-2.8.dylib' > }, > 'xrc' => { > 'link' => '-lwx_mac_xrc-2.8', > 'dll' => > 'libwx_mac_xrc-2.8.dylib' > }, > 'base' => { > 'link' => '-lwx_base_carbon-2.8', > 'dll' => > 'libwx_base_carbon-2.8.dylib' > }, > 'qa' => { > 'link' => '-lwx_mac_qa-2.8', > 'dll' => 'libwx_mac_qa-2.8.dylib' > }, > 'adv' => { > 'link' => '-lwx_mac_adv-2.8', > 'dll' => > 'libwx_mac_adv-2.8.dylib' > }, > 'aui' => { > 'link' => '-lwx_mac_aui-2.8', > 'dll' => > 'libwx_mac_aui-2.8.dylib' > }, > 'richtext' => { > 'link' => '- > lwx_mac_richtext-2.8', > 'dll' => > 'libwx_mac_richtext-2.8.dylib' > }, > 'html' => { > 'link' => '-lwx_mac_html-2.8', > 'dll' => > 'libwx_mac_html-2.8.dylib' > }, > 'net' => { > 'link' => '- > lwx_base_carbon_net-2.8', > 'dll' => > 'libwx_base_carbon_net-2.8.dylib' > }, > 'xml' => { > 'link' => '- > lwx_base_carbon_xml-2.8', > 'dll' => > 'libwx_base_carbon_xml-2.8.dylib' > }, > 'stc' => { > 'link' => '-lwx_mac_stc-2.8', > 'dll' => > 'libwx_mac_stc-2.8.dylib' > }, > > }, > > I can now run perl Makefile.PL to completion and build wxPerl. I'm > still having some problems. Just loading the Wx module is now > causing an error: > > $ wxperl > use Wx; > Can't load '/Library/Perl/5.8.6/darwin-thread-multi-2level/auto/Wx/ > Wx.bundle' for module Wx: dlopen(/Library/Perl/5.8.6/darwin-thread- > multi-2level/auto/Wx/Wx.bundle, 1): Symbol not found: > __ZTV11wxMediaCtrl > Referenced from: /Library/Perl/5.8.6/darwin-thread-multi-2level/ > auto/Wx/Wx.bundle > Expected in: dynamic lookup > at - line 1 > Compilation failed in require at - line 1. > BEGIN failed--compilation aborted at - line 1. > > I'm not sure what the heck this is about. But I am closing in... > > If anyone has anything thoughts that would help, they would be very > much appreciated. > > Thanks, > Dan Freed > > > > > On Jan 19, 2007, at 2:53 PM, Eric Wilhelm wrote: > >> # from Beule, Franck >> # on Friday 19 January 2007 06:01 am: >> >>> And for my conclusion, if it's hard to compile on Windows (someone >>> succeded on this task, >>> but he didn't explained how) and impossible to compile on Linux and >>> MacOSX, >>> does someone really use wxPerl ??? >> >> Yes, it is quite possible. No, it is not easy. IME, >> Alien::WxWidgets >> can be a bit of a pain. I've not managed to successfully compile on >> windows, but getting the right tools installed on windows is a huge >> pain. I built wxGTK on linux without any trouble, but >> Alien::WxWidgets >> is still a speed-bump there. The mac works too, though getting it >> built as a universal binary is a huge pain because apple decided >> to put >> too much of the smarts into xcode and CPAN isn't having any of that. >> >> Which is why dotReader has to provide out-of-the-box bundles for all >> three platforms. That's not easy. Dependency scanning is the >> current >> speedbump. >> >> Consider the challenges: >> >> o compiling wxWidgets without user intervention (Alien) >> o compatibility with multiple wxWidgets versions >> o compatibility with multiple perl versions >> o various flaky windows environments (make, nmake, gcc, cc.exe, >> etc) >> o compatibility with multiple mac versions >> (mac testing is expensive: 1 OS per machine, no virtualizing, >> and apple end-of-lifes the old xcode on day one of the next OS) >> >> And that's just the overhead to developing the perl binding. >> Unfortunately, until more people pitch in to strawberry perl, >> automated >> cross-platform testing, etc, this isn't going to get easier for >> end-users either. wxPerl itself is very well done, but these huge >> barriers to entry make it hard to test, let alone contribute. >> >> IMNSHO, the spam on this list doesn't help much. The wiki is also >> a bit >> slow from this part of the world. I think wxPerl's users, code, and >> documentation would really benefit from moving to the perl.org >> infrastructure (mail, svn, probably even hosting.) >> >> --Eric >> -- >> "Matter will be damaged in direct proportion to its value." >> --Murphy's Constant >> --------------------------------------------------- >> http://scratchcomputing.com >> --------------------------------------------------- >> >> --------------------------------------------------------------------- >> ---- >> Take Surveys. Earn Cash. Influence the Future of IT >> Join SourceForge.net's Techsay panel and you'll get the chance to >> share your >> opinions on IT & business topics through brief surveys - and earn >> cash >> http://www.techsay.com/default.php? >> page=join.php&p=sourceforge&CID=DEVDEV >> _______________________________________________ >> wxperl-users mailing list >> wxp...@li... >> https://lists.sourceforge.net/lists/listinfo/wxperl-users > > Daniell Freed > win...@gm... > Bereshit bara Elohim et hashamayim ve'et ha'arets... > > Daniell Freed win...@gm... Bereshit bara Elohim et hashamayim ve'et ha'arets... |
From: Mark D. <mar...@zn...> - 2007-01-21 11:26:34
|
Beule, Franck wrote: > And for my conclusion, if it's hard to compile on Windows (someone > succeded on this task, > but he didn't explained how) and impossible to compile on Linux and > MacOSX, > does someone really use wxPerl ??? > I can't speak for MacOSX or Linux, as I don't 'really use' wxPerl on those platforms. But I have occasionally built wxPerl on those platforms just to check out if my perl code on the different platforms --- and for me, "cpan install Alien::wxWidgets" just worked. As I don't truly understand how MacOSX / Linux determine library dependencies beyond a basic idea of ld_path, I just let Alien build wxWidgets for me. For building on Win32, as far as I am aware, there is no secret. But, the steps I follow for an ANSI build using MSVC6 are below. Remember, these may be completely wrong / non-optimal - but they are shared :-) ------------------------------------------------------ Download and install the MSW source of wxwidgets. Download the source of Alien::wxWidgets . In the Alien source, you will find a file .../patches/wxMSW-2.6.3-setup.patch. You want to apply these changes to the setup.h file in ../wxwidgets/include/wx/msw/setup.h The actual value changes can also be used for version 2.8.0 of wxWidgets. Next, edit the file ../wxwidgets/build/msw/config.vc changing the following values: SHARED = 1 BUILD = release USE_OPENGL = 1 And you are ready to build wxWidgets...... cd ../wxwidgets/build/msw nmake -f makefile.vc cd ../wxwidgets/contrib/build/stc nmake -f makefile.vc Next, set up the necessary env vars and build Alien. cd ../Alien-wxWidgets-0.27/ set WXWIN=/path/to/wxwidgets set WXDIR=/path/to/wxwidgets perl Build.PL perl Build perl Build test perl Build install Now you can build wxPerl with the standard perl Makefile.PL nmake nmake test nmake install If I want a unicode build (limited to Win2000 and above), the additional steps I follow are: in ../wxwidgets/build/msw/config.vc UNICODE = 1 in ../wxwidgets/include/wx/msw/setup.h #define wxUSE_UNICODE 1 building Alien : perl Build.PL --unicode building wxPerl perl Makefile.PL unicode |