Omega Owners Forum
Chat Area => General Discussion Area => Topic started by: JamesV6CDX on 30 March 2018, 19:44:08
-
I am a novice to Linux, and over the last few months I have been teaching myself things.
I've have to start from the very basics with the shell, but I've taught myself about how it handles users, folders/files, permissions. I've learnt about sudo / IPtables / Yum / Firewalld / Apache / and other real basics, I've also managed to download and install some web apps and get them running after editing config files.
I have three VPS's, one on Centos 6.9, one on Centos 7, but the question I have is around my Debian one, running Perl 5.
I have a Perl app that I want to use (nothing forum related) - it becomes available on port 8080 and requires lots of dependencies, which I have identified and installed.
Despite doing this, and despite using "aptitude" to confirm there's nothing missing, I still get an error message when I Try and run the app:
Can't locate AnyEvent/AIO.pm in @INC (you may need to install the AnyEvent::AIO module)
The problem is, I have installed every perl AnyEvent module I can find - but, there is none listed in the repositories that I can find, that matches the above.
Can any clever folk shed any light, please? :y
-
I seem to remember Kevin is a Linux buff...........I think :-\
-
I seem to remember Kevin is a Linux buff...........I think :-\
Exccccccccellent (Said like Mr Burns) :y
-
Or was it dbug.........sorry.......... :-[
-
Kevin plays around with it. :y
OS I mean ;D
-
Thanks, zirk, saved me bacon there ;D
-
Hmm, I've got an old "netbook", it works but it's XP. I've been tempted to have ago with Linux, but so many different flavours. And . . . can I be arsed ?
-
Thanks, zirk, saved me bacon there ;D
No not Kevin Bacon his busy doing those EE adverts at the moment.
........Oh, I see what you mean now, yea, your welcome, usual arrangements apply, in the same Bank Account please. :)
-
You need to find the documentation for the repository you are using to identify which dependencies you need. Just firing off at the hip is a sure way to frustration in my experience.
-
What is the perl app?
-
Run:
apt-cache search AIO
to find name of missing Perl module, then
apt-get install <name> to install it
Being a popular distro, there should be a compiled version for Debian. If not, you're probably better off going into the dark world of CPAN, which will cause you problems on a distro like Debian.
Are you really sure you want to start something new running shitty old Perl though?
-
Just run the search on an old Debian (7.1) which is all I have to hand, suspect you need this one:
apt-cache search AnyEvent
libanyevent-aggressiveidle-perl - Aggressive idle processes for AnyEvent.
libanyevent-callback-perl - callback aggregator for AnyEvent watchers
libanyevent-dbd-pg-perl - AnyEvent interface to DBD::Pg's async interface
libanyevent-dbi-perl - module supporting asynchronous DBI access
libanyevent-forkobject-perl - fork jail for AnyEvent
libanyevent-http-perl - simple non-blocking HTTP/HTTPS client
libanyevent-httpd-perl - simple lightweight event based web (application) server
libanyevent-i3-perl - communicate with the i3 window manager
libanyevent-irc-perl - Perl module for handling IRC connections
libanyevent-perl - event loop framework with multiple implementations
libanyevent-redis-perl - Perl module that implements a non-blocking Redis client
libanyevent-serialize-perl - serializer and deserializer for AnyEvent
libanyevent-tools-perl - instrument collection for AnyEvent
libanyevent-xmpp-perl - implementation of the XMPP Protocol
twiggy - AnyEvent HTTP server for PSGI (like Thin)
-
Cheers Jaime. I’ve installed every anyevent one in the list but it’s still grumbling about a missing “anyevent:: AIO module” >:(
-
Did I mention Perl is old and shit, and a complete mess? Are you really sure you want to use a Perl app? ;)
Try libio-aio-perl
-
Did I mention Perl is old and shit, and a complete mess? Are you really sure you want to use a Perl app? ;)
Try libio-aio-perl
We're talking about James here, he won't give up till he makes it work.
-
Did I mention Perl is old and shit, and a complete mess? Are you really sure you want to use a Perl app? ;)
Try libio-aio-perl
There are so few apps out there for what I want, that are free and self hosted, that I don't really have a huge choice. Plus it's only a bit of fun, nothing serious,
Tried your suggestions:
root@:~# apt install libio-aio-perl
Reading package lists... Done
Building dependency tree
Reading state information... Done
libio-aio-perl is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
root@:~# apt install libanyevent-perl
Reading package lists... Done
Building dependency tree
Reading state information... Done
libanyevent-perl is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
root@:~#
I still get:
Can't locate AnyEvent/AIO.pm in @INC (you may need to install the AnyEvent::AIO module)
-
libio-aio-perl is Debian's packaged AnyEvent AIO module.
Do you have aio.pm on the drive anywhere? (find / -name "aio.pm"). If so, add its location to perl's inc, or softlink it from an area that is in Perl's inc.
-
libio-aio-perl is Debian's packaged AnyEvent AIO module.
Do you have aio.pm on the drive anywhere? (find / -name "aio.pm"). If so, add its location to perl's inc, or softlink it from an area that is in Perl's inc.
I managed to find it using this wildcard: # find / -name "AIO*"
Results as follows:
/usr/lib/x86_64-linux-gnu/perl5/5.20/auto/IO/AIO
/usr/lib/x86_64-linux-gnu/perl5/5.20/auto/IO/AIO/AIO.so
/usr/lib/x86_64-linux-gnu/perl5/5.20/IO/AIO.pm
-
Is this a permissions issue?
The AIO module appears to be related to 'asynchronous io' which would have meant rs232 serial communications on an original IBM PC.
To work with serial comms on a debian system you need to be a member of the group that can access the hardware (IIRC the 'modem' group)
-
Would have to be permissions on AIO.pm itself rather than the serial port group, but worth checking the permissions on that file and that the user is in the modem group.
Other than that, I tend to avoid Perl if I can. I'll give AIO a try when I'm next sitting at a suitable Debian machine.
-
Given that I installed (and attempting to run) as root, id be surprised if permissions?
-
Given that I installed (and attempting to run) as root, id be surprised if permissions?
Depends. The Perl interpreter might run under its own user.
Sounds more likely that it can't find the file, though. Is the source referencing an explicit path that's different in Debian to wherever the software originated?