Tiny Core Linux
Tiny Core Base => CorePlus => Topic started by: toasted on January 14, 2017, 02:37:47 PM
-
I installed irssi by running the below command.
$tce-load -wi irssi.tcz
and the installation was successful.
But, when I try to execute irssi I get the following output:
irssi: error while loading shared libraries: libperl.so: cannot open shared object file: No such file or directory
Do I have to re-install perl5?
If so how would I do that ?
I forgot to mention that this only the CLI version. No gui.
-
Hi
You can use tce-ab from the CLI to search "Provides" for missing libraries like libperl.so
tce-ab
tce-ab - Tiny Core Extension: Application Browser
S)earch P)rovides K)eywords or Q)uit:p
Enter search term, e.g. iwconfig: libperl.so
If used to using the CLI you'll have no issues using tce-ab which will lead you to install extensions providing any required lib's after escaping the extension info file
-
Thanks coreplayer2
I tried that and nothing happened.
How would I uninstall perl safely?
-
I'm a little disturbed with
I tried that and nothing happened.
What were you expecting?
after learning that perl5.tcz is needed to install the missing library did you continue with tce-ab to install perl5.tcz?
did perl5 actually install?
did installing perl solve the current missing lib issue?
How would I uninstall perl safely?
you can use tce-audit to manipulate and remove / delete extensions
While I prefer APPs, I find CLI utilities quite useful. So perhaps
tce-audit delete /pathtotcedir/optional/perl5.tcz
-
I was expecting that maybe it would of installed libperl.so and im new to tiny core and linux in general
It says perl5 is already installed.
And when I try to delete perl5 it says,
autoconf.tcz
automake.tcz
irssi.tcz
perl_xml_parser.tcz
perl5.tcz cannot be deleted.
-
I was Irssi maintainer but just compiled for another user. As noted it works in graphics, never tested in TTY. Forum member hiro indicated a newer Irssi was available and was planning to submit an update, he wil be new maintainer. Seems repo gets updated every 2nd Sunday, tomorrow may be an updated Irssi in the repository.
Looking at old build notes, perl5 was already added as a dependency but there may be a Perl issue, see paste below. I am not booted into TC at present and can't confirm correct install directory for perl5: /usr/local/lib/perl5/i486-linux.
http://www.irssi.org/
-----
download irssi-08.17.tar.gz to /tmp
-----
cd /tmp
-----
tar xvf irssi-08.17.tar.gz
-----
cd /tmp/irssi-08.17/
-----
tce-load -i compiletc squashfs-tools perl5 openssl-dev glib2-dev
note: notes indicate v2.6 required but worked with TC 6 glib2 v2.4
-----
CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --disable-static --localstatedir=/var
-----
configure results:
Building text frontend ........... : yes, using terminfo
Building irssi bot ............... : no
Building irssi proxy ............. : no
Building with module support ..... : yes
Building with Perl support ....... : static (in irssi binary)
Perl library directory ........... : /usr/local/lib/perl5/i486-linux
- NOTE: This was automatically set to the same directory you gave with
--prefix. If you want the perl libraries to install to their 'correct'
path, you'll need to give --with-perl-lib=site option to configure.
Anyway, installing perl to this directory should work just as well.
Install prefix ................... : /usr/local
Building with IPv6 support ....... : yes
Building with SSL support ........ : yes
Building with 64bit DCC support .. : yes
Building with garbage collector .. : no
Building with DANE support ....... : no
Building with true color support.. : no
-----
make
-----
mkdir /tmp/irssi
-----
sudo make DESTDIR=/tmp/irssi install-strip
-----
cd /tmp
-----
sudo chown -R root:root /tmp/irssi
-----
mksquashfs /tmp/irssi irssi.tcz
-----
touch irssi.tcz.dep
-----
echo -e "perl5.tcz \nopenssl.tcz \nglib2.tcz \nncurses.tcz" >> irssi.tcz.dep
-----
cp irssi.tcz irssi.tcz.dep /etc/sysconfig/tcedir/optional/
-----
As noted in the paste above, there may be a Perl issue that needs more investigation, hopefully already addressed in the new build. If not use Irssi in graphics for now and report any ongoing issues after you update to latest release.
-
nitram,
I cant wait for tomorrow! I'm excited about this new irssi build for Tiny Core.
-
Ok thanks, I understand the objectives now.
This issue has gone beyond a simple dependency install issue, which hopefully will be resolved by the extension maintainers.
I noticed that libperl.so is obviously installed with the perl5 extension
tc@box:~$ file /tmp/tcloop/perl5/usr/local/lib/perl5/5.22.0/i486-linux/CORE/libperl.so
/tmp/tcloop/perl5/usr/local/lib/perl5/5.22.0/i486-linux/CORE/libperl.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, stripped
perhaps a version issue?
-
Hopefully new version all fixed. Just took quick look, Perl reportedly static, maybe Perl conflict.
In the meantime, try removing perl5.tcz entry from /etc/sysconfig/tcedir/optional/irssi.tcz.dep so it looks like:
openssl.tcz
glib2.tcz
ncurses.tcz
Reboot system and re-test Irssi, otherwise just wait, sorry don't have time to test and troubleshoot today.
Edit: Probably correct coreplayer2 or just simple Perl conflict as described here or a simple symlink may be helpful.
-
And when I try to delete perl5 it says,
autoconf.tcz
automake.tcz
irssi.tcz
perl_xml_parser.tcz
perl5.tcz cannot be deleted.
An FYI, This response informs us that perl5.tcz can not be uninstalled due to it's requirement of the above extensions.
If I understand correctly you're question, to install libperl.so you'll need to have perl5 extension installed. In this case per5 extension is installed as a required dependency of irssi (along with other installed extensions).
-
BTW symlink appears good
However..
/tmp/tcloop/irssi $ depList
These dependencies are found
glib2.tcz
ncurses.tcz
openssl.tcz
These dependencies are missing
libperl.so
/tmp/tcloop/irssi $
-
@ Nitram
/tmp/tcloop/irssi $ realpath libperl.so
/tmp/tcloop/irssi/libperl.so
/tmp/tcloop/irssi $
what wrong with this picture?
-
coreplayer2,
Yeah it could be a version issue. Hopefully the new build with fix it. And deleting perl5 might take a little bit of work it seems because of the other dependencies. I also risk breaking something else I think.
nitram,
I tried removing it from the list and it still would not launch. It aslo yields the same error.
Do you guys think locally re-compiling irssi from source would fix the perl issue?
-
@ Nitram
/tmp/tcloop/irssi $ realpath libperl.so
/tmp/tcloop/irssi/libperl.so
/tmp/tcloop/irssi $
what wrong with this picture?
Well I'm glad Nitram didn't reply, I accidentally copied and paste the wrong text.. oh well I think the OP knows what to do
Sent from my iPhone using Tapatalk
-
What time should I tce-load the new irssi?
-
The location of the perl library in tc-7.x is /usr/local/lib/perl5/5.22.0/i486-linux/CORE/libperl.so
I'd guess that the irssi extension was created in a previous version of tinycore using a previous version of perl and thus is looking for the perl library in the wrong place.
-
How do I point irssi to the right perl library?
-
Extensions have been uploaded today already, so you might try updating
Sent from my iPhone using Tapatalk
-
I just tried from a fresh install and it is giving me the same error.
-
I just tried from a fresh install and it is giving me the same error.
I just tried irssi also and I can confirm, you are not wrong :p
Ok so I successfully launched irssi after creating a symlink /usr/lib/libperl.so to the real source
Do this:
sudo ln -sf /usr/local/lib/perl5/5.22.0/i486-linux/CORE/libperl.so /usr/lib/libperl.so
then add " usr/lib/libperl.so " to your backup so the link will persist after a reboot
Maybe this link should be created by the perl5 startup script?? Or maybe irssi should be compiled against the tc-7 perl5 extension??
PS. a symlink in /usr/local/lib/libperl.so does not work either
a symlink in /usr/lib/libperl.so works
Irssi v0.8.21 - http://www.irssi.org
19:10 -!- ___ _
19:10 -!- |_ _|_ _ _____(_)
19:10 -!- | || '_(_-<_-< |
19:10 -!- |___|_| /__/__/_|
19:10 -!- Irssi v0.8.21 - http://www.irssi.org
19:10 -!- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
19:10 -!- Hi there! If this is your first time using Irssi, you
19:10 -!- might want to go to our website and read the startup
19:10 -!- documentation to get you going.
19:10 -!-
19:10 -!- Our community and staff are available to assist you or
19:10 -!- to answer any questions you may have.
19:10 -!-
19:10 -!- Use the /HELP command to get detailed information about
19:10 -!- the available commands.
19:10 -!- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
19:24 Irssi commands:
19:24 accept die knock notice sconnect unload
19:24 action disconnect knockout notify script unnotify
19:24 admin echo lastlog op scrollback unquery
19:24 alias eval layout oper server unsilence
19:24 away exec links part servlist upgrade
19:24 ban flushbuffer list ping set uptime
19:24 beep foreach load query sethost userhost
19:24 bind format log quit silence ver
19:24 cat hash lusers quote squery version
19:24 cd help map rawlog squit voice
19:24 channel hilight me recode stats wait
19:24 clear ignore mircdcc reconnect statusbar wall
19:24 completion info mode redraw time wallops
19:24 connect invite motd rehash toggle who
19:24 ctcp ircnet msg reload topic whois
19:24 cycle ison names resize trace whowas
19:24 dcc join nctcp restart ts window
19:24 dehilight kick netsplit rmreconns unalias
19:24 deop kickban network rmrejoins unban
19:24 devoice kill nick save unignore
Interesting, but unfortunately I don't know how to use it..
-
If irssi is configured with "--with-perl-lib=/usr/local/lib/perl5/5.22.0", it should be able to find libperl
-
coreplayer2,
The syntax worked! Thanks a lot for your halp! :)
Now I just got to add to my backup. This is great..
-
coreplayer2,
The syntax worked! Thanks a lot for your halp! :)
Now I just got to add to my backup. This is great..
You're welcome, but this is only a temporary fix. Hopefully the maintainer will figure out what's wrong and perhaps recompile with an updated configure option
-
If irssi is configured with "--with-perl-lib=/usr/local/lib/perl5/5.22.0", it should be able to find libperl
I'm running tc6 and there it has to be /usr/local/lib/perl5/5.20.0
To be honest I'm a bit confused now, I thought all this would be the job of ldconfig?
-
do we have to add these dirs to /etc/ld.so.conf ?
-
I realize now that the only viable option I'm seeing would be to update perl5 in tc6. Until then it won't work out of the box on both tc6 and tc7 at the same time!
-
ok, sorry to make so many posts (i can't edit my older ones any more).
i have realized updating the perl package is not a good option, the only thing that would work without creating other problems with older existing packages would be to have both versions alongside each other. it seems like perl got designed to allow this.
in the meantime i just submitted an updated irssi package just for 7.x
-
Could it create the symlink in the startup script? Surely there's only one libperl.so?
-
Since you have to recompile all of the perl modules every time the perl version changes I assume there's no attempt at backwards compatibilty?
-
perl people don't like this, they want the freedom to break the ABI. thus they say we should make two extensions (either two perl extensions to be installed alongside, or two irssi versions. for me the latter was easier)
-
my fix got uploaded, try now.