Compiling irssi


WizardStan

Mega GP Mania
Joined
May 24, 2008
Messages
16,731
Can I get a little help compiling irssi with perl support? The one from the Angstrom repo doesn't have perl support, and I can't seem to get it to build from scratch. Cross compiling gets most of the way through configure before telling me "error compiling test module" and bollocks method tells me "C compiler cannot create executables" almost immediately which is stupid because I've been building executables and libraries both ways for a while now.
 
Yatfeau configure and build it without perl easily... I'm sure you can get the rest yourself ;) (with a bit of google or ... me;P)
 
Last edited by a moderator:
I did google. Almost every single response to questions along the lines of "I'm trying to compile irssi but I get this error" is "sudo apt-get install irssi"


A deeper google suggests that it can't be configured with perl support in cross compiler situation because when it checks for perl libs it simply calls perl, and then uses that, which means it would try to jam my x86 libraries into the ARM executable, so bollocks method it is, but not if it doesn't think I have a compiler.
 
If you want it, I've attached the irssi-with-perl-support I compiled on my Pandora to this post. I tested it to the extent of connecting to #openpandora and running some random perl scripts in it. Thing is though - because of the --prefix I used when compiling it, Perl's @INC path includes /media/mmcblk1p1/build-irssi, so unless you want to put it in that directory, you'll need to copy everything in irssi/lib/perl/5.8 to one of the other places in the @INC path (i.e Perl's usual places, or ~/.irssi/scripts/).


If you want to compile it yourself, let me know and I'll provide more info.


BTW: the compiler can't create executables message usually comes up when gcc can't find libgmp or libmpfr, but if you've got them in /usr/lib (as I'm assuming you do if you're using torpor's method), then it's weird that it can't. The config.log file usually says what the problem is though.

irssi_pandora.zip
 

Attachments

  • irssi_pandora.zip
    1 MB · Views: 150
I appreciate the effort, but for some reason that binary crashed when I tried to load a perl script. Probably missing libraries, thinking on it now.


But encouraged by your success I went back to Torpor's original post and tried to reinstall the packages, just in case maybe there was anything missing or corrupted. This promptly hosed my system as ncurses got all messed up :p


A few forced reinstalls and I was back in business. Eventually got it to configure without perl support but couldn't get it to build with perl support. Missing perl libraries. A lot of them. So I configure, wait a couple minutes, see what the next missing module is, opkg install that (good thing I'm running off SD here) and so on and so forth. Seriously, I've no idea how many modules I've had to install, but I'd been at it for well over an hour. Then there were modules that needed to be installed that I didn't know were missing until I manually ran ExtUtils::Embed.


Finally I needed to symlink perl.so.5 to perl.so because that wasn't done automatically for some reason.


And then configure was able to complete successfully.


A quick make later and I'm up and running. So thanks for your help :)
 
*.so files are not requiered to run stuff (only requiered to link). at runtime you're using lib*.so.x.y.


That explain why there was no libperl.so on pandora nand ;)
 
Oh yeah - I had to manually create the symlink too - we can blame the angstrom devs I guess. I wonder if mine crashed cos I'm still on perl 5.8.8 and your OS will be on perl 5.10 ... but then again, maybe that upgrade only happened after all that opkg action (would explain why it took so long, because I only added CBuillder, XSParse and Typemap from CPAN). Anyways ... it's good to read you got it compiled.
 
Getting it to compile was apparently only half the battle. There was another dozen or so perl modules I had to install after compiling in order to make install (because I didn't use the --prefix option) and then a few more required to actually run the scripts.


Then I ran a couple of quick scripts to just opkg install perl-module*, because that's what I should have done to begin with.


Oh well, it works great now, I have scripting support at last.
 
If you want to compile it yourself, let me know and I'll provide more info.
How did you get it to link to the correct Perl lib? I'm trying to build irssi with perl support too, though in this case actually for OpenWRT but from what I can see it's a generic issue with the linking this is basically the only place where I've seen some success except optware.
 
Back
Top