Page 1 of 2

Generic Linux Installer not seeing file within its own folde

Posted: Thu Jul 31, 2014 7:21 pm
by Iktomi
When I try to run ./mudlet from within the bin folder that's installed with the generic linux installer I get the follow message:

./mudlet: error while loading shared libraries: libpcre.so.3: cannot open shared object file: No such file or directory


However, if I look right in the bin folder that mudlet is located in, there IS libpcre.so.3

Any ideas?

Re: Generic Linux Installer not seeing file within its own f

Posted: Thu Jul 31, 2014 8:19 pm
by xabre
You should run ./run-mudlet.sh, not ./mudlet directly. First one adds libraries within Mudlet's folder to $PATH, second one tries to find those libraries within existing $PATH (which is usually looking for system libs which may or may not be there).

Re: Generic Linux Installer not seeing file within its own f

Posted: Fri Aug 01, 2014 6:51 pm
by Iktomi
I tried that too, with no change.

Re: Generic Linux Installer not seeing file within its own f

Posted: Fri Aug 01, 2014 7:12 pm
by xabre
What error does it give you when you try to start it from terminal?

Re: Generic Linux Installer not seeing file within its own f

Posted: Fri Aug 01, 2014 8:01 pm
by phasma
Redhat based, right? Yeah... Installer does not work with all distributions and likely never will. It's just ridiculously and notoriously difficult to do such.

Re: Generic Linux Installer not seeing file within its own f

Posted: Fri Aug 01, 2014 11:48 pm
by xabre
Since you wrote that you use Arch in other thread, here's what's causing the issue: generic installer is complied against yajl 1, while Arch uses yajl 2 for quite some time now. I solved it by symlinking libyajl.so.1 from mudlet's bin dir to /usr/lib. after that it works like a charm (just run ./mudlet and it'll use system libs plus libyajl.so.1 from mudlet's install dir).

Re: Generic Linux Installer not seeing file within its own f

Posted: Fri Aug 01, 2014 11:58 pm
by Iktomi
aha! Thanks. I'll give that a try and see if it loads all the lua. Thanks.

Re: Generic Linux Installer not seeing file within its own f

Posted: Mon Aug 04, 2014 11:46 pm
by Iktomi
Nope, it's still not working. Maybe it just doesn't work with Arch

Re: Generic Linux Installer not seeing file within its own f

Posted: Tue Aug 05, 2014 1:23 am
by xabre
Well, give us some output for debbuging. As I told you, I'm running Arch and using generic installer. So, it does work.

Run it from terminal and let's see what it says.

Re: Generic Linux Installer not seeing file within its own f

Posted: Tue Aug 05, 2014 1:43 am
by Iktomi
Alright. First off I'm using the x64 version of the installer.

On a clean install of the generic installer, when I run -- ./run-mudlet.sh -- I get:

Code: Select all

 ./mudlet: error while loading shared libraries: libquazip.so.0: cannot open shared object file: No such file or directory 
If I run it with -- ./mudlet -- I get:

Code: Select all

 ./mudlet: error while loading shared libraries: libpcre.so.3: cannot open shared object file: No such file or directory 
After creating the symbolic link you suggested, if I run the startup script I get:

Code: Select all

./mudlet: error while loading shared libraries: libquazip.so.0: cannot open shared object file: No such file or directory
And if I run the bin directly:

Code: Select all

 ./mudlet: error while loading shared libraries: libpcre.so.3: cannot open shared object file: No such file or directory
Same thing, no change.If I try to link this libpcre.so.3 it fails, saying that it already exists. However I do not see it in /usr/lib. I have a libpcre.so, and libpcre.so.1 that are both symbolic links pointing to libpcre.so.1.2.3 in the same directory. I do have a libpcre.so.3 in a few locations within my Steam directory. I ended up just creating a copy of the one from the mudlet/bin directory and placing it /usr/lib.

When I try to run -- ./mudlet -- after that, I get:


Code: Select all

./mudlet: error while loading shared libraries: liblua5.1.so.0: cannot open shared object file: No such file or directory
When I try to run it from the script, I'm still getting the same message.

The liblua5.1.so.0 within the mudlet/bin directory is itself a symbolic link pointing to liblua5.1.so.0.0.0. So, I link this to the /usr/lib directory as liblua5.1.so.0.

I run the -- ./mudlet -- again and get:

Code: Select all

./mudlet: error while loading shared libraries: libquazip.so.0: cannot open shared object file: No such file or directory
So now both the script and the bin are looking for this particular file.