PDA

View Full Version : getlibs: Automatically solves dependencies for 32-bit programs on 64-bit


Cappy
June 15th, 2007, 12:15 PM
On 64-bit systems it downloads and installs libraries needed for 32-bit programs and 64-bit programs.
On 32-bit systems it downloads and installs libraries needed for 32-bit programs.
Newest version: 2.06 released on [March 1st, 2008]

Thank you to the following bug reporters: marararam ViRMiN Cabal elanthis BogusJoe NullHead mooball
Thank you to the following Beta Testers: Kilz BogusJoe NullHead
Special thanks to: RavanH

To install or upgrade:
http://www.boundlesssupremacy.com/Cappy/getlibs/getlibs-all.deb
Download and double click the file to install.

-----

View the source without installing the package:
http://www.boundlesssupremacy.com/Cappy/getlibs/getlibs

getlibs works on:
All Ubuntu and Debian systems
Debian or Ubuntu based distributions (best to use the package name)



Tip: To install a 32-bit debian package for a program (not a library!) use
sudo dpkg -i --force-all package_name.deb

Usage Examples:

getlibs on a program to download all missing libraries:
getlibs /usr/bin/skype
-----

Use getlibs to install a 32-bit library using the library name:
getlibs -l libogg.so.0 libSDL-1.2.so.0
-----

Use getlibs to install a 32-bit library using the package name:
getlibs -p libqt4-core libqt4-gui
-----

Install a 32-bit library file (.deb):
getlibs -i ~/i386_library_1.deb
-----

Download and install a 32-bit library file (.deb):
getlibs -w http://mirrors.kernel.org/ubuntu/pool/main/s/sdl-image1.2/libsdl-image1.2_1.2.5-3_i386.deb
-----

Other options:

--apt-file : Uses apt-file to find the packagenames for libraries. The default uses packages.ubuntu.com. This is especially useful for non-ubuntu users.

--build : converts a 32-bit package to a 64-bit package and installs it. This will only install libraries from a 32-bit package into the correct place! This will not install any binaries from that package! This is very beta.

--savebuild : use with --build. Saves new 64-bit package to /home/$USER

--mirror or -m : Use the specified mirror to download from if one is not specified for package

--verbose : Extra output

--ldconfig : Runs ldconfig on directories where new libraries are installed

-64 : Will let apt-get install 64-bit packages for a 64-bit system

-32 : Left only for compatibility with getlibs v1. 32-bit library installation is the default for all systems.

--distro : can set as either Ubuntu or Debian. Ubuntu installs to /usr/lib32 and/or /lib32. Debian installs to /emul/ia32-linux/

--release : can set as hardy gutsy feisty edgy or dapper. Determines what web interface release is used in search.

fabertawe
June 15th, 2007, 12:30 PM
What do you guys think? Is this script helpful enough I should improve it?

Hi Cappy,

sounds like a great idea and something that could be very useful for installing 32bit apps. I just wish I had something to try it out with! I'm sure you'll get some good feedback for this :D

Paul

Kilz
June 15th, 2007, 01:11 PM
A very interesting project. Sounds like something that would make multiarch a reality before the Ubuntu developers do it. For i386 binaries, it installs the 32bit libraries in the correct place? This might stop some new users fubaring their installs by forcing libraries.

©TriMoon®
June 15th, 2007, 02:17 PM
What do you guys think? Is this script helpful enough that I should improve it?

Always handy to have support scripts to ease things.
Some tips for change:
1) Dont demand install as root.
2) Rename the script to have .sh extension, only real binaries should have names without extensions.
3) Use sudo and the like to visually ask the user for administrative rights when really needed.

gbesso
June 15th, 2007, 06:44 PM
This is great, Thank you so much!

Cappy
June 15th, 2007, 09:39 PM
For i386 binaries, it installs the 32bit libraries in the correct place?

Yes, it does! I commented my code if you would like to take a look.

Cappy
June 21st, 2007, 06:29 PM
I've updated this to version 1.01
New features:
*Built-in support for handling multiple missing libraries
*Cleaned code up, cleaned regex's up
*Added new feature: install libraries using the name
Example:

$ getlibs -64 libogg.so.0 libSDL-1.2.so.0
Matched library libogg.so.0 to libogg0
Matched library libSDL-1.2.so.0 to libsdl1.2debian-all
Reading package lists... Done
Building dependency tree
Reading state information... Done
libogg0 is already the newest version.
The following NEW packages will be installed:
libsdl1.2debian-all
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 213kB of archives.
After unpacking 20.5kB of additional disk space will be used.
Do you want to continue [Y/n]?

This new feature supports non arch downloading, just like the binary (original/main) function.

jusmurph
June 21st, 2007, 09:49 PM
very nice project!

RavanH
June 23rd, 2007, 05:26 AM
Thanks, Cappy, for this GREAT script!

I wanted to test the latest Skype and it was not available through Simple64 yet. Searching the forums, I stumbled upon your promising post. And it worked!

FYI:
After installing getlibs (following your instructions) and downloading the Skype 1.4.0.74 deb package (http://skype.com/go/getskype-linux-ubuntu) to my home directory, I installed the latest Skype (32bit architecture) on my AMD64 Ubuntu Feisty by opening a terminal emulation screen and entering sudo dpkg -i --force-architecture skype*.deb

Then I entered the command skype which returned the error skype: error while loading shared libraries: libQtDBus.so.4: cannot open shared object file: No such file or directory

Then I entered getlibs /usr/bin/skype which returned Matched library libQtCore.so.4 to /feisty/libs/libqt4-core
Matched library libQtDBus.so.4 to /feisty/libs/libqt4-core
Matched library libQtGui.so.4 to /feisty/libs/libqt4-gui
Matched library libQtNetwork.so.4 to /feisty/libs/libqt4-core
Matched library libsigc-2.0.so.0 to /feisty/libs/libsigc++-2.0-0c2a
Libraries have been installed.

Then I tried again the command skype which this time returned skype: error while loading shared libraries: libdbus-1.so.3: cannot open shared object file: No such file or directory

So again, I ran getlibs /usr/bin/skype which this time returned Matched library libdbus-1.so.3 to /feisty/libs/libdbus-1-3
Libraries have been installed.

And for sure, this time the command skype resulted in Skype starting up!
:popcorn:

So again: a big THANKS for this great script. IMHO it should be integrated in Ubuntu's 64bit version ASAP!!!

--ravan

blindarbalest
June 24th, 2007, 05:34 PM
Thank you very much! I had already forked up my libraries trying to get the 32 bit dependencies for Skype installed -- fortunately apt-get installed what I needed to get Ubuntu working again. getlibs worked like a charm, and I'm now chatting happily. :)

Cabal
June 25th, 2007, 03:47 PM
I'm using Kubuntu (yes, I'm not in the correct forum), but I've been struggling with Skype for some time now, and getlibs sounded like a good solution, but it does not seem to be working for me.

rafael@cobranca:~$ skype
skype: error while loading shared libraries: libQtDBus.so.4: cannot open shared object file: No such file or directory
rafael@cobranca:~$ getlibs /usr/bin/skype
No match found for libQtCore.so.4
No match found for libQtDBus.so.4
No match found for libQtGui.so.4
No match found for libQtNetwork.so.4
No match found for libsigc-2.0.so.0

Am I missing something?

zsouthboy
June 25th, 2007, 04:23 PM
This script should be integrated into all debian based distros, if you are willing to manage that project. It would help linux newbies even more than now!

RavanH
June 25th, 2007, 05:48 PM
This script should be integrated into all debian based distros, if you are willing to manage that project. It would help linux newbies even more than now!
Hear-hear!

Cappy
June 25th, 2007, 06:08 PM
In the meantime, here is the install for skype: http://ubuntuforums.org/showthread.php?t=432295

jw5801
June 26th, 2007, 12:20 AM
Great script! I've been trying to run ePSXe for a while now, but couldn't find the required 32-bit libraries it needed. The script told me that it "...isn't missing any dependancies!" but when I got it to find the libs that ePSXe told me it was missing it worked like a charm! (I'd copy the error messages here for you, but it's working now so I can't replicate them).

This really should be shipped with the 64-bit distro! It solves alot of hassle.

Cabal
June 26th, 2007, 11:24 AM
Cappy, here's the output:

rafael@cobranca:~/Programas$ sh -x /usr/bin/getlibs /usr/bin/skype
+ [ 1 -lt 1 ]
+ [ 1 -gt 1 ]
+ [ 1 -eq 1 ]
+ binaryfile=/usr/bin/skype
+ file /usr/bin/skype
+ grep -c 32-bit
+ isit32bit=1
+ arch
+ architecture=x86_64
+ [ x86_64 = x86_64 ]
+ [ 1 -eq 1 ]
+ download=1
+ ldd /usr/bin/skype
+ grep not found
+ awk {print $1}
+ grep -v ./
+ sed s/+/%2B/g
+ dependencylist=libQtDBus.so.4
libQtGui.so.4
libQtNetwork.so.4
libQtCore.so.4
libsigc-2.0.so.0
+ echo libQtDBus.so.4 libQtGui.so.4 libQtNetwork.so.4 libQtCore.so.4 libsigc-2.0.so.0
+ awk {print $1}
+ libraryneeded=libQtDBus.so.4
+ [ libQtDBus.so.4 = ]
+ cd /tmp
+ [ -d /tmp/getlibs ]
+ mkdir -m 700 getlibs
+ cd /tmp/getlibs
+ echo libQtDBus.so.4
libQtGui.so.4
libQtNetwork.so.4
libQtCore.so.4
libsigc-2.0.so.0
+ sort liblist.tmp
+ uniq
+ libraries=libQtCore.so.4
libQtDBus.so.4
libQtGui.so.4
libQtNetwork.so.4
libsigc-2.0.so.0
+ rm liblist.tmp
+ libraryneeded=
+ [ 1 -eq 1 ]
+ wget -q -O- http://packages.ubuntu.com/cgi-bin/search_contents.pl?word=libQtCore.so.4&searchmode=searchfiles&case=insensiti
ve&version=feisty&arch=i386
+ grep usr/lib/[^/]*[s]*<
+ grep -o "[^<]*"
+ grep -v color:
+ sed s/"//g
+ linktopage2=
+ echo
+ awk {print $1}
+ packagename=
+ [ = ]
+ echo No match found for libQtCore.so.4
No match found for libQtCore.so.4
+ [ 1 -eq 2 ]
+ [ 1 -eq 1 ]
+ wget -q -O- http://packages.ubuntu.com/cgi-bin/search_contents.pl?word=libQtDBus.so.4&searchmode=searchfiles&case=insensiti
ve&version=feisty&arch=i386
+ grep usr/lib/[^/]*[s]*<
+ grep -o "[^<]*"
+ grep -v color:
+ sed s/"//g
+ linktopage2=
+ echo
+ awk {print $1}
+ packagename=
+ [ = ]
+ echo No match found for libQtDBus.so.4
No match found for libQtDBus.so.4
+ [ 1 -eq 2 ]
+ [ 1 -eq 1 ]
+ wget -q -O- http://packages.ubuntu.com/cgi-bin/search_contents.pl?word=libQtGui.so.4&searchmode=searchfiles&case=insensitiv
e&version=feisty&arch=i386
+ grep usr/lib/[^/]*[s]*<
+ grep -o "[^<]*"
+ grep -v color:
+ sed s/"//g
+ linktopage2=
+ echo
+ awk {print $1}
+ packagename=
+ [ = ]
+ echo No match found for libQtGui.so.4
No match found for libQtGui.so.4
+ [ 1 -eq 2 ]
+ [ 1 -eq 1 ]
+ wget -q -O- http://packages.ubuntu.com/cgi-bin/search_contents.pl?word=libQtNetwork.so.4&searchmode=searchfiles&case=insens itive&version=feisty&arch=i386
+ grep usr/lib/[^/]*[s]*<
+ grep -o "[^<]*"
+ grep -v color:
+ sed s/"//g
+ linktopage2=
+ echo
+ awk {print $1}
+ packagename=
+ [ = ]
+ echo No match found for libQtNetwork.so.4
No match found for libQtNetwork.so.4
+ [ 1 -eq 2 ]
+ [ 1 -eq 1 ]
+ wget -q -O- http://packages.ubuntu.com/cgi-bin/search_contents.pl?word=libsigc-2.0.so.0&searchmode=searchfiles&case=insensi tive&version=feisty&arch=i386
+ grep usr/lib/[^/]*[s]*<
+ grep -o "[^<]*"
+ grep -v color:
+ sed s/"//g
+ linktopage2=
+ echo
+ awk {print $1}
+ packagename=
+ [ = ]
+ echo No match found for libsigc-2.0.so.0
No match found for libsigc-2.0.so.0
+ [ 1 -eq 2 ]
+ [ -d /tmp/getlibs/extracted/usr/lib/ ]
+ [ != ]
+ sudo rm -rf /tmp/getlibs

Oh, maybe I should mention that I couldn't download your script with wget, for some weird reason... and I noticed the command more than once on the script. I'm also behind a proxy here (--proxy-user and --proxy-password did not help me also)

Cabal
June 26th, 2007, 11:34 AM
Ohh great, now it just works, for no special reason at all :P

Dunno what happened yesterday.

But as a sugestion, maybe you could update your script by adding a prompt for proxy user and password for some users behind proxys, who have no idea how do edit wgetrc and stuff like that.

Not that I'm linux wiz or anything, but it took me a long time to figure out these details when installing Firefox 2.

Cappy
June 26th, 2007, 12:16 PM
I found this too:
export http_proxy="http://username:password@proxy.example.com:8080"
which can be run before the script to correct the problem.

---

Version 1.02 is now released which includes several bug fixes.
*There is now a message that says you are running getlibs on a non-binary instead of displaying the "no missing dependancies!" message.

Known remaining bugs:
*Check if there are new dependencies after running.
*Proxy
*It will not solve dependencies that need to be moved to the binary's folder. Such dependencies error out like this: "error while loading shared libraries: ./libraryname.so" (it's the "./" in the front of the library name). The reason that the script doesn't solve this yet is because ldd will always show that library, even if it is actually in the folder. You must find the library - /usr/lib32 if it is a 32-bit binary on a 64-bit system and otherwise in /usr/lib and copy it to the folder with the binary. It may also be necessary to chown $USER:$USER it and/or chmod 755 it.
*Downloads files multiple times in a few packages like the qt

Tux0r
July 11th, 2007, 06:46 PM
Great script.

marararam
July 13th, 2007, 08:14 PM
Hi Cappy,
some remarks on your script:
1) 'give_error' does not give any error message but provides usage info, so it would better be called 'print_usage' or 'usage_info' or something similar
2) construction of $templist could be done in one line without a loop by use of $* or $@ respectively
3) repeated line: architecute=`arch`
4) there is no need to 'sudo' the dpkg -x, works perfectly as normal user
5) all 'rm -rf' can be done without sudo then, too.
6) maybe 'mktemp' would be of use to create a temporary directory (ensures a unique name)
7) some cleanup on abortion misses, can be done with 'trap' and a function. Somewhere near top of script insert:
--->8---
cleanup () {
rm -rf $tmp # your temporary dir
}

croak () {
echo "some error occured"
exit 13
}

trap "cleanup" 0 2 3 15

trap "croak" ERR
---8<---

8) great script, got skype 1.4 working.

Cappy
July 13th, 2007, 09:15 PM
1) changed, thanks
2) loop is for some error handling which is in the next version
3) changed, thanks
4/5) changed, thanks
6) changed, thanks didn't know about this command
7) will do -especially needed now with the mktemp, thanks much

Cappy
July 16th, 2007, 06:37 AM
The size of the script more than doubled from the last update. It's grown about three times the size of the first version which was released almost exactly a month ago (June 17th).

Version 1.03:

getlibs will now work with the correct repositories with:
All Ubuntu: Gutsy, Feisty, Edgy, Dapper, Breezy, Hoary, Warty
All Debian: Sid (unstable), Lenny (testing), Etch (stable), Sarge (oldstable)
Mepis (Using the ubuntu repos)
All debian or ubuntu based 32-bit systems
Probably on other 64-bit debian based systems


*Fixed every known bug including the "skype" bug where getlibs must be run twice on skype to solve the dependencies.
*Error Handling - Validates ALL user input. Before it would say "All dependencies satisfied" even if you didn't point it at an existing file. Lots and lots of added error handling. Didn't build it in earlier so there could be at least a working program.
*If a library is missing in the folder of the binary getlibs will now tell you.

I wish I had a spicy shrimp ramen bowl; I need to go buy some.

RavanH
July 16th, 2007, 06:47 AM
I've got your previous version running, and very happy with it :)

So do I update to the latest by way of cd /tmp
wget -q http://www.boundlesssupremacy.com/Cappy/getlibs/getlibs
chmod +x getlibs
sudo mv getlibs /usr/bin
cd ~ as if it is a new install? Or will that break anything?

Cappy
July 16th, 2007, 06:50 AM
Good question. Yes, if you run that code again you will upgrade getlibs. I'll change the first page to say this; Thanks.

Thanks for mentioning getlibs on the skype forums too. A few people seem to have gotten help from that.

RavanH
July 16th, 2007, 08:58 AM
Thanks for mentioning getlibs on the skype forums too. A few people seem to have gotten help from that.
No, thank *you* for such an excellent script. Good scripts that are not in the repositories yet deserve word-of-mouth promotion :)

SpikeLee
July 17th, 2007, 08:28 AM
Erreurs étranges...
Lorsque je lance le script, j'ai un affichage mal formaté et rien ne marche :

~$ getlibs /usr/bin/skype
Matched library libQtCore.so.4 to http://packages.debian.org/unstable/libs/libqt4-core
Matched library libQtDBus.so.4 to http://packages.debian.org/unstable/libs/libqt4-core
Matched library libQtGui.so.4 to http://packages.debian.org/unstable/libs/libqt4-gui
Matched library libQtNetwork.so.4 to http://packages.debian.org/unstable/libs/libqt4-core
Matched library libsigc-2.0.so.0 to http://packages.debian.org/unstable/libs/libsigc++-2.0-0c2a
The following i386 libraries will be installed:\nhttp://packages.debian.org/unstable/libs/libqt4-core\nhttp://packages.debian.org/unstable/libs/libqt4-core\nhttp://packages.debian.org/unstable/libs/libqt4-gui\nhttp://packages.debian.org/unstable/libs/libqt4-core\nhttp://packages.debian.org/unstable/libs/libsigc++-2.0-0c2a
Continue? (y/n) y
Downloading.dpkg-deb: impossible de lire l'archive « /tmp/getlibs.JaCSc29007/\n\n\n\n\n »: Aucun fichier ou répertoire de ce type
Installing libraries ...
cp: ne peut évaluer `/tmp/getlibs.JaCSc29007/extracted/*': Aucun fichier ou répertoire de ce type
New depedencies have been detected:
libQtDBus.so.4
Matched library libQtDBus.so.4 to http://packages.debian.org/unstable/libs/libqt4-core
The following i386 libraries will be installed:\nhttp://packages.debian.org/unstable/libs/libqt4-core
Continue? (y/n)


Le problème d'affichage se résouds en remplaçant les echo par des echo -e, mais par contre, cela ne fonctionne toujours pas :

Continue? (y/n) y
DownloadingInstalling libraries ...
cp: ne peut évaluer `/tmp/getlibs.VMXUk14751/extracted/*': Aucun fichier ou répertoire de ce type
New depedencies have been detected:
libQtDBus.so.4


Une idée ?

Cappy
July 17th, 2007, 05:24 PM
Hi, the error was mine because the packages.debian.org had a little different syntax on the packages.ubuntu.com. For instance, "i386" shows up once on an ubuntu package but debian also has a "hurt i386". Try with the new script.
As for the echo -e, the "sh" shell the program is running in does not have the "echo -e" function and is automatically set to do so. It may be different on your sh shell but it doesn't look like it is disrupting the script.

---
http://www.google.com/language_tools

Bonjour, l'erreur était la mienne parce que packages.debian.org a eu une peu de syntaxe différente sur packages.ubuntu.com. Par exemple, « i386 » apparaît une fois sur un paquet d'ubuntu mais debian a également « un i386 blessé ». Essai avec le nouveau manuscrit.
Quant à l'écho - e, la coquille « SH » que le programme fonctionne dedans n'a pas « écho - la fonction d'e » et est automatiquement placé pour faire ainsi. Elle peut être différente sur votre coquille SH mais elle ne regarde pas comme elle perturbe le manuscrit.

SpikeLee
July 18th, 2007, 02:32 AM
Hi !

Fisrt of all, sorry for speaking French, I was on French forums before, and I forgot to switch in English :oops:

Secondly, thank you very much, this script works perfectly. However, I had to replace again all the "echo" by "echo -e". The shell I use is shell bash
I think you can leave it like that, it doesn't matter for the other shell. and it shouldn't give an error.

Nice job cappy:wink:

Cappy
July 18th, 2007, 03:29 AM
Iif you are running debian the script now sets
shopt -s xpg_echo
which makes echo recognize special characters. For a second there I was worried that I was going to have to go through and replace the lines with echo with something else.
I just tested this on a virtualbox debian and it looks like it is working well =)

I also noticed that debian can't use sudo by default? I guess that means that most people will be using getlibs as root on debian.

SpikeLee
July 18th, 2007, 05:23 AM
Thanx for the tips ;)

Indeed, I'm running a debian distribution, and I had to run this scrpit as root even if I have sudo on my machine. Don't know why. It should have worked, but...
Anyway, everything is working good now ;)

mrpurple
August 1st, 2007, 12:55 PM
hi thank You for the script. it resolve all my problem.
now i'm asking what i have to do for an update as soon there is a new version of skype ?
thank to help a really newby.

Cappy
August 1st, 2007, 01:04 PM
You will just need to re-install skype -
download the new ubuntu skype .deb file and if you are running 64-bit
sudo dpkg -i --force-architecture skype-*.deb
Just like you did the first time. You probably won't need to use getlibs again after re-installing unless they add a new 32-bit library (you will get an error when you launch "skype" from the terminal if you do)

Cappy
August 2nd, 2007, 03:17 PM
New version 1.04:
No new features.
Some bug fixes and added flexibility when parsing the webpages so that it will work on situation where my preferred mirror, mirrors.kernel.org, is not available.
Some more error messages, for instance, if someone tries to install libGL.so.1 which can only be installed by the right video drivers.

The code is now released under the "DO WHAT THE **** YOU WANT TO PUBLIC LICENSE" which allows you to basically do anything you want with the code including copy parts of it for your own scripts, modify it, sell it, etc.

nickdjones
August 4th, 2007, 10:17 PM
first up, thanks, this thread has provided the most progress out of anything I've come across, when coupled with your other thread on installing Skype http://ubuntuforums.org/showthread.php?t=432295. These 2 threads should be promoted top/foremost on skype and other forums as THE ones to watch.

Now for my issues .. I made it almost all the way to the end of your AMD64 Skype install instructions on a fresh install of Ubuntu 7.04 Feisty .. but failed at this 2nd to last one:

sudo dpkg -i --force-architecture skype-*.deb
which looked like this when run:

sudo dpkg -i --force-architecture skype-*.deb
dpkg - warning, overriding problem because --force enabled:
package architecture (i386) does not match system (amd64)
(Reading database ... 105121 files and directories currently installed.)
Preparing to replace skype 1.4.0.94-1 (using skype-debian_1.4.0.94-1_i386.deb) ...
Unpacking replacement skype ...
dpkg: dependency problems prevent configuration of skype:
skype depends on libqt4-core (>= 4.2.1); however:
Package libqt4-core is not installed.
skype depends on libqt4-gui (>= 4.2.1); however:
Package libqt4-gui is not installed.
dpkg: error processing skype (--install):
dependency problems - leaving unconfigured
Errors were encountered while processing:
skype


which is when I found the wonderful getlibs script, installed it, and ran it, with the following output:

getlibs /usr/bin/skype
This application isn't missing any dependencies


so, how bout installing each .so manually, thinking I'm pretty smart i proceeded to run:

getlibs -32 libQTCore.so.4
Matched library libQTCore.so.4 to /feisty/libs/libqt4-core
The following i386 libraries will be installed:
/feisty/libs/libqt4-core
Continue? (y/n) y
Downloading. Installing libraries ...

for each of

libQtCore.so.4
libQtDBus.so.4
libQtGui.so.4
libQtNetwork.so.4
libsigc-2.0.so.0
thinking I was pretty smart! Taking a browser around (which I did later, but is worth noting here), these libs seemed to have been istalled within the skype install directory, which is perhaps the issue I need to resolve, but I haven't found any info telling me whereelse to put them.. any advice on this one appreciated:

~/skypebetainstall/libqt/

Now, I thought, back to that 2nd to last line and get back on track..

sudo dpkg -i --force-architecture skype-*.deb
dpkg - warning, overriding problem because --force enabled:
package architecture (i386) does not match system (amd64)
(Reading database ... 105121 files and directories currently installed.)
Preparing to replace skype 1.4.0.94-1 (using skype-debian_1.4.0.94-1_i386.deb) ...
Unpacking replacement skype ...
dpkg: dependency problems prevent configuration of skype:
skype depends on libqt4-core (>= 4.2.1); however:
Package libqt4-core is not installed.
skype depends on libqt4-gui (>= 4.2.1); however:
Package libqt4-gui is not installed.
dpkg: error processing skype (--install):
dependency problems - leaving unconfigured
Errors were encountered while processing:
skype

hmmm... perhaps not.. and for good measure (really desperate not sure what to do actions of a lost man!)..

getlibs /usr/bin/skype
This application isn't missing any dependencies

so. what next.. ah, your post here http://ubuntuforums.org/showpost.php?p=2912896&postcount=14 talks about getting some debug information from your install script.. nice touch btw. so here it is:

sh -x /usr/bin/getlibs /usr/bin/skype
+ trap clean_up_err 1 2 3 13 15
+ trap clean_up 0
+ PATH=/usr/bin:/bin:/sbin:/usr/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
+ export PATH
+ mktemp -d /tmp/getlibs.XXXXXXXXXX
+ clean_up_err
+ rm -rf
+ exit 1
+ tempdir=/tmp/getlibs.cFQFXP4403
+ [ 1 -lt 1 ]
+ echo x
+ grep x
+ [ x ]
+ debugon=1
+ arch
+ architecture=x86_64
+ lsb_release -c
+ grep -o [[:alnum:]]*$
+ releaseinput=feisty
+ distroname=feisty
+ set_site_ubuntu
+ sitetouse=http://packages.ubuntu.com
+ [ http://packages.ubuntu.com = http://packages.debian.org ]
+ [ x86_64 = x86_64 ]
+ [ http://packages.ubuntu.com = http://packages.debian.org ]
+ [ x86_64 = x86_64 ]
+ [ http://packages.ubuntu.com = http://packages.ubuntu.com ]
+ [ ! -e /usr/lib32/libGLU.so.1 ]
+ [ 1 -gt 1 ]
+ binaryfile=/usr/bin/skype
+ [ ! -f /usr/bin/skype ]
+ [ ! -r /usr/bin/skype ]
+ file /usr/bin/skype
+ grep ELF
+ [ -z /usr/bin/skype: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.4.1, dynamically linked (uses shared libs), stripped ]
+ file /usr/bin/skype
+ grep 32-bit
+ isit32bit=/usr/bin/skype: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.4.1, dynamically linked (uses shared libs), stripped
+ file /usr/bin/skype
+ grep 64-bit
+ isit64bit=
+ [ x86_64 = x86_64 ]
+ [ /usr/bin/skype: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.4.1, dynamically linked (uses shared libs), stripped ]
+ nativedownload=0
+ dirname /usr/bin/skype
+ clean_up_err
+ rm -rf /tmp/getlibs.cFQFXP4403
+ exit 1
+ cd /usr/bin
+ basename /usr/bin/skype
+ binaryfile=skype
+ ldd skype
+ grep not found
+ awk {print $1}
+ sed s/+/%2B/g
+ dependencylist=
+ echo
+ grep \./
+ sed s/\.\///g
+ neededlocallibraries=
+ [ ]
+ echo
+ grep -v ./
+ dependencylist=
+ echo
+ grep [[:alpha:]]
+ [ -z ]
+ echo This application isn't missing any dependencies
This application isn't missing any dependencies
+ exit
+ clean_up
+ rm -rf /tmp/getlibs.cFQFXP4403


and thats it.. as far as i've come so far. I think I might need to move my QT4 files somewhere, and then complete your install script.. but just not sure where to.. any help appreciated!

Cappy
August 4th, 2007, 10:20 PM
Hi, try
sudo dpkg -i --force-all skype-*.deb
and it will install.
If it doesn't run THEN use getlibs:
sudo getlibs /usr/bin/skype

(you are running getlibs on your old skype install)
I can see how that is confusing, I'll see about making that clear somewhere.

nickdjones
August 4th, 2007, 10:42 PM
Thanks Cappy, I found the other packages script here http://ubuntuforums.org/showthread.php?t=449551 which seems to have worked, albeit it gave me some confusing output while going through the install, which I've noted here http://ubuntuforums.org/showthread.php?p=3135060#post3135060.

I haven't run your suggestions since Skype is now working, so sorry if I can't report whether they finally worked for me.

thanks ! Nick

Ran.Rutenberg
August 13th, 2007, 12:45 PM
Keep on the good work...

This script solved all the problems I had with Skype on my machine.

Thanks,
Ran Rutenberg

mrpurple
August 17th, 2007, 03:27 AM
dear upgrading to the last skype versione i obtaing this error :

sudo dpkg -i --force-all skype-*.deb
dpkg - warning, overriding problem because --force enabled:
package architecture (i386) does not match system (amd64)
(Reading database ... 135873 files and directories currently installed.)
Preparing to replace skype 1.4.0.94-1 (using skype-debian_1.4.0.99-1_i386.deb) ...
Unpacking replacement skype ...
dpkg-deb (subprocess): short read in buffer_copy (failed to write to pipe in copy)
dpkg-deb: subprocess paste returned error exit status 2
dpkg: error processing skype-debian_1.4.0.99-1_i386.deb (--install):
short read in buffer_copy (backend dpkg-deb during `./usr/share/skype/sounds/CallRingingOut.wav')
Errors were encountered while processing:
skype-debian_1.4.0.99-1_i386.deb

so do You have a solution for that ?

Cappy
August 17th, 2007, 04:38 AM
That means you need to redownload the .deb file because it did not finish downloading.

Also ... I just uploaded 1.05. Not much in it. Fixed an error I came across today where getlibs wouldn't extract a debian under weird circumstances. Fixed a parsing problem for non-english users.

TechZilla
August 28th, 2007, 01:40 AM
was going to do all the 32-bit dependancy crap for skype, but this script did that whore for me....HUGE appreciation man. now this process is even easier :KS

HUGE PROPS on a well done. highly usfull script

tekhawk
September 3rd, 2007, 06:25 PM
:guitar: thank you ive been using opensuse for past year just moving to ubuntu but these forums and stuff like this app are making it easy

ViRMiN
September 12th, 2007, 12:44 PM
Cappy

Thanks for sharing your script. Having battled this afternoon trying to get Skype up and running on my new x64 machine with a fresh install of Feisty and then upgraded to Gutsy, I've found a change required:

Line 122: architecture = `uname -m`

The /bin/arch binary is not there, and has been "replaced" with 'uname -a'; or so I read. Either way, making that one change to your script got Skype up and running!!! Cheers!!!

Cappy
September 12th, 2007, 02:29 PM
Thank you for the information. I will make the change asap (aka when I'm done with my CS project that is due tonight).

jeskuruvilla
September 12th, 2007, 06:17 PM
Hi folks,

I cant seem to get skype installed on my intel centrino duo processor. I am forced to accept amd64 as the architecture. while trying to install skype I get

Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
ia32-libs: Depends: lib32stdc++6 but it is not going to be installed
Depends: lib32gcc1 but it is not going to be installed
Depends: lib32z1 but it is not going to be installed
Depends: libc6-i386 but it is not going to be installed
E: Broken packages

All of this started with an attempt to install pidgin and the command that caused the removal of the above libs was $ sudo apt-get install -f
How can this be undone? The usr folder shows the presence of both lib32 and lib64 folders.
Forcing the architecture on the 32 bit programs does not help. Any pointers would be appreciated.

martsie
September 13th, 2007, 03:19 PM
This has worked perfectly for me.

(K)Ubuntu 7.04

http://ubuntuforums.org/showthread.php?t=432295

terry98
September 13th, 2007, 05:49 PM
OMG... i'm using Ubuntu Feisty 64bit and i tried installing acetoneiso for gnome but it failed on a library that i already had, but then i ran the getlibs script and it downloades again what it needed and worked normally...

Great job on "getlibs"......


Another step to making Linux more user friendly....:grin:

malachias
September 22nd, 2007, 04:38 PM
I love you Cappy and I want you to know that.

RavanH
September 24th, 2007, 05:07 PM
Cappy

Thanks for sharing your script. Having battled this afternoon trying to get Skype up and running on my new x64 machine with a fresh install of Feisty and then upgraded to Gutsy, I've found a change required:

Line 122: architecture = `uname -m`

The /bin/arch binary is not there, and has been "replaced" with 'uname -a'; or so I read. Either way, making that one change to your script got Skype up and running!!! Cheers!!!

On a fresh Gutsy install, this did indeed make getlibs work...
1. in terminal: sudo gedit /usr/bin/getlibs
2. Search > Go to > line 122
3. replace 'arch' with 'uname -m'

Thanks ViRMiN and Cappy!

Cappy
September 24th, 2007, 06:25 PM
Getlibs has been updated now, thanks.

GSF1200S
September 28th, 2007, 07:00 PM
Oh my god, dude.. you dont know how much easier youve made my KDE life. It sucks having to find each dependency with apt because a deb package is made for (gnome) ubuntu. Good stuff..

bouncingmolar
September 30th, 2007, 05:50 PM
I know this isn't a debian forum, but I have a problem using it on debian sid amd64 (i think thats what i've got). What am I missing?


# getlibs /usr/bin/skype
No match found for package libQtCore.so.4
No match found for package libQtDBus.so.4
No match found for package libQtGui.so.4
No match found for package libQtNetwork.so.4
No match found for package libsigc-2.0.so.0
No libraries to download.

and

getlibs -32 libQtCore.so.4
No match found for package libQtCore.so.4
No libraries to download.
:confused:

Cappy
September 30th, 2007, 08:26 PM
I just looked and debian changed their web package interface so that is why getlibs isn't working on it. The script worked for debian because both the ubuntu and debian used the same interface.

Also they changed the template so a grep won't work so I would need to write a multi-line awk regex to find what package to download. I won't be able to update the script for the new interface for at least a week.

There is a guide on how to do it manually on debian here:
http://www.debian-administration.org/articles/531

Alternatively, you can change getlibs to think you are a Debian Gutsy but of course you would be installing ubuntu libraries.

plutino
October 2nd, 2007, 01:32 AM
great script, it saved me from abandon my old plotting software which requires 32-bit tcl/tk. Thank you.

Luciferion
October 8th, 2007, 04:17 PM
This is really great and useful tool. Thank You for that !!

DaveTheAve
October 9th, 2007, 01:35 PM
david@Devlon:~$ skype
skype: error while loading shared libraries: libQtDBus.so.4: cannot open shared object file: No such file or directory
david@Devlon:~$ whereis skype
skype: /usr/bin/skype /usr/X11R6/bin/skype /usr/bin/X11/skype /usr/share/skype

david@Devlon:~$ getlibs /usr/bin/skype
Matched library libQtCore.so.4 to /feisty/libs/libqt4-core
Matched library libQtDBus.so.4 to /feisty/libs/libqt4-core
Matched library libQtGui.so.4 to /feisty/libs/libqt4-gui
Matched library libQtNetwork.so.4 to /feisty/libs/libqt4-core
Matched library libsigc-2.0.so.0 to /feisty/libs/libsigc++-2.0-0c2a
The following i386 libraries will be installed:
/feisty/libs/libqt4-core
/feisty/libs/libqt4-gui
/feisty/libs/libsigc++-2.0-0c2a
Continue? (y/n) y
Downloading... Installing libraries ...
New depedencies have been detected:
libdbus-1.so.3
Matched library libdbus-1.so.3 to /feisty/libs/libdbus-1-3
The following i386 libraries will be installed:
/feisty/libs/libdbus-1-3
Continue? (y/n) y
Downloading. Installing libraries ...

david@Devlon:~$ skype
(Skype works!)


One thing I would change however is when i pressed enter without pressing Y (assuming it would default), it aborted the program and why the need to ask to continue twice? I understand it needs more dependancys but I already gave the program my permission.

++$happyUbuntuUser;

esdaniel
October 10th, 2007, 12:43 PM
Thank you, great work!

tonywhelan
October 19th, 2007, 12:57 AM
Cappy, have just installed getlibs and Skype on my new Ubuntu Gutsy installation, your script was very helpful!

Cappy
October 19th, 2007, 03:52 AM
One thing I would change however is when i pressed enter without pressing Y (assuming it would default), it aborted the program and why the need to ask to continue twice? I understand it needs more dependancys but I already gave the program my permission.

++$happyUbuntuUser;

Thank you for the UI suggestions Dave.

malachias
October 21st, 2007, 03:33 PM
If you use this wonderful script you'll probably notice it stops working in Gusty, giving an error for 'arch' on line 119. Actually the problem's on line 122: `arch` is no longer a valid command. The quick fix for this is to manually set the value of architecture in the script. I run 64 bit Ubuntu, so I just changed the line to read:
architecture="x86_64";

If you use a powerpc, set it to "ppc". If you use 32 bit ubuntu, as far as I can tell you should just set it to any value that isn't "x86_64" or "ppc" (i.e. "i386", or even "omghi" should work).

Cappy
October 21st, 2007, 04:47 PM
I fixed that Gutsy bug a few weeks ago (thanks to ViRMiN!). Just as proof I'm running Gutsy and it works:

$ sudo getlibs /usr/bin/skype
Matched library libdbus-1.so.3 to /gutsy/libs/libdbus-1-3
The following i386 libraries will be installed:
/gutsy/libs/libdbus-1-3
Continue? (y/n) y
Downloading. Installing libraries ...

Please update to the newest version.

As for a ppc .. getlibs would try to apt-get install the missing libraries (Just saying it doesn't add much functionality).

drtvasudevan
October 25th, 2007, 08:23 PM
another word of appreciation from here!
thanks a million!
tv
ubuntu 7.10 intel dual core duo

jaybombalous
October 27th, 2007, 06:45 AM
Hands down one of the best and most useful scripts for a 64 bit arch system yet. Of course, ironically this had to be one of the first things I installed and it worked so well for me to get skype up and running.

I can see it being a lot more useful, I vote for this to make it into the official supported software repos. Its works just that good...

paulmac
October 27th, 2007, 10:14 AM
Thank you for the link that installed this program. seems like 90% of the time when I cut and paste in terminal it does not work. thank you for the sane and easy install of the program.

RavanH
October 27th, 2007, 05:40 PM
Has anyone tested getlibs on cairo-dock (https://developer.berlios.de/projects/cairo-dock/) yet?

I recently installed cairo-dock 32bit version 1.3.8 (https://developer.berlios.de/project/showfiles.php?group_id=8724&release_id=13619) with "dpkg -i --force-architecture" and then did all the missing dependancies manually (see https://developer.berlios.de/forum/message.php?msg_id=40418).

Now I see that the new getlibs works on Gutsy, but am hesitant to remove all the manually installed libs from my system to go and test getlibs on /usr/bin/cairo-dock ...

Anyone willing to test? If it works, installation of cairo-dock will have become very easy on AMD64... and a lot of people will have a very nice and functional piece of eye candy at their disposal :)

--ravan

Cappy
October 27th, 2007, 10:48 PM
Getlibs will be able to but I'm not able to download the 32-bit deb file.
http://prdownload.berlios.de/cairo-dock/cairo-dock_v1.3.8.1_i686-32bits.deb
The link is broken.

If running getlibs on the binary doesn't work then you can always use the getlibs -32 way.

Vesa Paatero
October 30th, 2007, 06:44 PM
Thanks, Cappy, the script worked great!

When I tried to install missing 32-bit libraries for Skype myself, the 32-bit libs seemed to overwrite the corresponding 64-bit ones (for libsigc++, at least), but your script puts them in a dedicated place to avoid that.

I'm glad I found your script before trying to make a 32-bit chroot area or implement some other complicated scheme. :-)

Vesa

Cappy
October 30th, 2007, 10:56 PM
Cairo-dock works fine for me.

Here is it working:

~/Desktop$ sudo dpkg --force-all -i cairo-dock_v1.3.8.1_i686-32bits.deb
[sudo] password for cappy:
Selecting previously deselected package cairo-dock.
(Reading database ... 162800 files and directories currently installed.)
Unpacking cairo-dock (from cairo-dock_v1.3.8.1_i686-32bits.deb) ...
dpkg: cairo-dock: dependency problems, but configuring anyway as you request:
cairo-dock depends on libglitz-glx1; however:
Package libglitz-glx1 is not installed.
Setting up cairo-dock (1.3.8) ...
cappy:~/Desktop$ whereis cairo-dock
cairo-dock: /usr/bin/cairo-dock /usr/share/cairo-dock
cappy:~/Desktop$ sudo getlibs /usr/bin/cairo-dock
Matched library libglitz-glx.so.1 to /gutsy/libs/libglitz-glx1
Matched library libglitz.so.1 to /gutsy/libs/libglitz1
Matched library librsvg-2.so.2 to /gutsy/libs/librsvg2-2
The following i386 libraries will be installed:
/gutsy/libs/libglitz1
/gutsy/libs/libglitz-glx1
/gutsy/libs/librsvg2-2
Continue? (y/n) y
Downloading... Installing libraries ...
New depedencies have been detected:
libgsf-1.so.114
libcroco-0.6.so.3
Matched library libcroco-0.6.so.3 to /gutsy/libs/libcroco3
Matched library libgsf-1.so.114 to /gutsy/libs/libgsf-1-114
The following i386 libraries will be installed:
/gutsy/libs/libcroco3
/gutsy/libs/libgsf-1-114
Continue? (y/n) y
Downloading.. Installing libraries ...


I get some errors below but the program runs perfectly:

cappy@cappy-chan:~$ cairo-dock
Attention : Error opening directory '/usr/share/cairo-dock/plug-in': No such file or directory
no module will be available
(cairo-dock:15561): Gtk-WARNING **: Error loading theme icon 'gtk-cancel' for stock: Unable to load image-loading module: /usr/lib32/gtk-2.0/2.10.0/loaders/svg_loader.so: /usr/lib32/gtk-2.0/2.10.0/loaders/svg_loader.so: cannot open shared object file: No such file or directory

(cairo-dock:15561): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -2 and height 71

(cairo-dock:15561): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -2 and height 71

(cairo-dock:15561): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -2 and height 71

(cairo-dock:15561): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -2 and height 71

(cairo-dock:15561): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -2 and height 71
rm -rf /home/cappy/.cairo-dock/current_theme/*
/bin/cp -r /usr/share/cairo-dock/themes/_Ubuntu_/* /home/cappy/.cairo-dock/current_theme
-> cConfFileLanguage : fr
Attention : Key file does not have key 'main dock view'
Attention : Key file does not have key 'sub-dock view'
res_name : gaim; res_class : Gaim
pas de _NET_WM_ICON, mais un pixmap
_cairo_dock_get_pixbuf_from_pixmap (56623122) : 48x42x24 pixels (0;0)
_cairo_dock_get_pixbuf_from_pixmap (56623123) : 48x42x1 pixels (0;0)
res_name : opera; res_class : Opera
res_name : nautilus; res_class : Nautilus
res_name : nautilus; res_class : Nautilus
res_name : gnome-terminal; res_class : Gnome-terminal
res_name : gnome-terminal; res_class : Gnome-terminal
cairo_dock_update_dock_size ()
cairo_dock_update_dock_size ()
cairo_dock_replace_key_values (0)
Attention : Key file does not have key 'frame1'
Attention : Key file does not have key 'frame3'


Edit:
The package manager didn't like the force-all and it said I had a broken package

sudo apt-get -f install
The following NEW packages will be installed:
libglitz-glx1
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 31.2kB of archives.
After unpacking 111kB of additional disk space will be used.
Do you want to continue [Y/n]? y
Get:1 ftp://ftp.gtlib.gatech.edu gutsy/main libglitz-glx1 0.5.6-1 [31.2kB]
Fetched 31.2kB in 0s (174kB/s)
Selecting previously deselected package libglitz-glx1.
(Reading database ... 163069 files and directories currently installed.)
Unpacking libglitz-glx1 (from .../libglitz-glx1_0.5.6-1_amd64.deb) ...
Setting up libglitz-glx1 (0.5.6-1) ...

so I had to resolve that.

RavanH
November 1st, 2007, 06:07 AM
Cairo-dock works fine for me.

Here is it working:

~/Desktop$ sudo dpkg --force-all -i cairo-dock_v1.3.8.1_i686-32bits.deb
[sudo] password for cappy:
Selecting previously deselected package cairo-dock.
(Reading database ... 162800 files and directories currently installed.)
Unpacking cairo-dock (from cairo-dock_v1.3.8.1_i686-32bits.deb) ...
dpkg: cairo-dock: dependency problems, but configuring anyway as you request:
cairo-dock depends on libglitz-glx1; however:
Package libglitz-glx1 is not installed.
Setting up cairo-dock (1.3.8) ...
cappy:~/Desktop$ whereis cairo-dock
cairo-dock: /usr/bin/cairo-dock /usr/share/cairo-dock
cappy:~/Desktop$ sudo getlibs /usr/bin/cairo-dock
Matched library libglitz-glx.so.1 to /gutsy/libs/libglitz-glx1
Matched library libglitz.so.1 to /gutsy/libs/libglitz1
Matched library librsvg-2.so.2 to /gutsy/libs/librsvg2-2
The following i386 libraries will be installed:
/gutsy/libs/libglitz1
/gutsy/libs/libglitz-glx1
/gutsy/libs/librsvg2-2
Continue? (y/n) y
Downloading... Installing libraries ...
New depedencies have been detected:
libgsf-1.so.114
libcroco-0.6.so.3
Matched library libcroco-0.6.so.3 to /gutsy/libs/libcroco3
Matched library libgsf-1.so.114 to /gutsy/libs/libgsf-1-114
The following i386 libraries will be installed:
/gutsy/libs/libcroco3
/gutsy/libs/libgsf-1-114
Continue? (y/n) y
Downloading.. Installing libraries ...


I get some errors below but the program runs perfectly:

cappy@cappy-chan:~$ cairo-dock
Attention : Error opening directory '/usr/share/cairo-dock/plug-in': No such file or directory
no module will be available
(cairo-dock:15561): Gtk-WARNING **: Error loading theme icon 'gtk-cancel' for stock: Unable to load image-loading module: /usr/lib32/gtk-2.0/2.10.0/loaders/svg_loader.so: /usr/lib32/gtk-2.0/2.10.0/loaders/svg_loader.so: cannot open shared object file: No such file or directory

(cairo-dock:15561): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -2 and height 71

(cairo-dock:15561): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -2 and height 71

(cairo-dock:15561): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -2 and height 71

(cairo-dock:15561): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -2 and height 71

(cairo-dock:15561): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -2 and height 71
rm -rf /home/cappy/.cairo-dock/current_theme/*
/bin/cp -r /usr/share/cairo-dock/themes/_Ubuntu_/* /home/cappy/.cairo-dock/current_theme
-> cConfFileLanguage : fr
Attention : Key file does not have key 'main dock view'
Attention : Key file does not have key 'sub-dock view'
res_name : gaim; res_class : Gaim
pas de _NET_WM_ICON, mais un pixmap
_cairo_dock_get_pixbuf_from_pixmap (56623122) : 48x42x24 pixels (0;0)
_cairo_dock_get_pixbuf_from_pixmap (56623123) : 48x42x1 pixels (0;0)
res_name : opera; res_class : Opera
res_name : nautilus; res_class : Nautilus
res_name : nautilus; res_class : Nautilus
res_name : gnome-terminal; res_class : Gnome-terminal
res_name : gnome-terminal; res_class : Gnome-terminal
cairo_dock_update_dock_size ()
cairo_dock_update_dock_size ()
cairo_dock_replace_key_values (0)
Attention : Key file does not have key 'frame1'
Attention : Key file does not have key 'frame3'


Edit:
The package manager didn't like the force-all and it said I had a broken package

sudo apt-get -f install
The following NEW packages will be installed:
libglitz-glx1
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 31.2kB of archives.
After unpacking 111kB of additional disk space will be used.
Do you want to continue [Y/n]? y
Get:1 ftp://ftp.gtlib.gatech.edu gutsy/main libglitz-glx1 0.5.6-1 [31.2kB]
Fetched 31.2kB in 0s (174kB/s)
Selecting previously deselected package libglitz-glx1.
(Reading database ... 163069 files and directories currently installed.)
Unpacking libglitz-glx1 (from .../libglitz-glx1_0.5.6-1_amd64.deb) ...
Setting up libglitz-glx1 (0.5.6-1) ...

so I had to resolve that.

Hi Cappy, thrilled to hear GETLIBS does the trick again!!!

It really :guitar:

Did you have to use --force-all? I only used --force-architecture and did not run into the broken package issue...

The errors you get when running cairo-dock from terminal are related to the theme the cairo-dock is using. If you can see the dock on your screen, then right-click on it (anywhere) and choose Cairo-Dock>Configure>All to open up configuration screen. Select the english language on the tab Cairo-Dock. Close and restart the dock to get everything in english. Then right-click again and choose Cairo-Dock>Manage Themes to select a nicer theme :)

salariua
November 2nd, 2007, 10:50 AM
You've got to love Ubuntu and all the things that came with it, the community, forum, magazines etc.

You guys are my heroes.... Keep up the good work !

joelpedersen
November 2nd, 2007, 05:32 PM
:KS Sweet Script! That was easy as pie!

xtonix
November 7th, 2007, 06:16 PM
Isn't easyer to use
lsb_release -i
Distributor ID: Debian
to determinate the distribution and
lsb_release -r
Release: testing
for release?

Now it's in the code:

#Select the correct site to download/search on
releaseinput=`lsb_release -c | grep -o [[:alnum:]]*$` #grep last word in the distro's codename
case $releaseinput in
#Ubuntu
heron) distroname="heron"; set_site_ubuntu;;
gutsy) distroname="gutsy"; set_site_ubuntu;;
feisty) distroname="feisty"; set_site_ubuntu;;
edgy) distroname="edgy"; set_site_ubuntu;;
dapper) distroname="dapper"; set_site_ubuntu;;
#Debian
sid) distroname="unstable"; set_site_debian;;
lenny) distroname="testing"; set_site_debian;;
etch) distroname="stable"; set_site_debian;;
sarge) distroname="oldstable"; set_site_debian;;
#Old Ubuntu
breezy) distroname="breezy"; set_site_ubuntu;;
hoary) distroname="hoary"; set_site_ubuntu;;
warty) distroname="warty"; set_site_ubuntu;;
#Unknown
*) echo "Unknown distro, using Debian Unstable (sid) settings"; distroname="unstable"; set_site_debian;;
esac

Cappy
November 7th, 2007, 06:43 PM
If I had known the lsb_release -r output that information for debian I probably would have used what you suggested. This was the first shell script I wrote and some things are done in an around-the-bout way. I take and will credit any contributions/changes if you would like to make any.

NullHead
November 15th, 2007, 05:24 PM
Cappy

When getlibs installs a lib for you does it cache the libs that it installs?

Cappy
November 15th, 2007, 05:31 PM
No, it doesn't. The libs are saved to /tmp/ and then those libraries are moved directly to the lib folder.

NullHead
November 15th, 2007, 05:37 PM
Does it make a log with the library filename in it?

Cappy
November 15th, 2007, 05:40 PM
It doesn't. The only thing it does is download and move the needed libraries to /usr/lib32.

NullHead
November 15th, 2007, 05:45 PM
Alright thanks for the help.

drtvasudevan
November 17th, 2007, 03:16 AM
should we lock the files after installing with getlibs?
recently skype wont start. after thinking for time i thought the original dependency files might have changed and the 32 bit versions have not been installed.
i ran getlibs again and sure there two files that needed changing.
redownloaded and now it works fine.
tv

supersonicdarky
November 19th, 2007, 06:00 PM
Server seems to be down. Any mirrors?

(if it's just me, then can someone please download and attach)

Momba
November 19th, 2007, 06:42 PM
No... It's not you. Same problem here. BUT: Google Cache still can give you the source.
But as I have been a proud Ubuntu user for the second day now, I haven't the slightest clue what to do with it. :)
If you know please let me know.

Cappy
November 19th, 2007, 08:29 PM
My server was down for a little bit - sorry.

私もアニメが好き。

svtfmook
November 19th, 2007, 11:31 PM
how do you reverse this? i no longer can play flash video w/ sound after this

Cappy
November 19th, 2007, 11:54 PM
how do you reverse this? i no longer can play flash video w/ sound after this

What did you use getlibs on?

What output do you get in the terminal when you run
firefox
from the terminal and try to watch a flash video?

elanthis
November 20th, 2007, 02:29 PM
svtfmook:

Upgrading to pulseaudio will break sound in Flash, so check to see if that's the problem.

32-bit flash uses 32-bit ALSA, which requires a 32-bit Pulseaudio plugin, which doesn't exist in the 64-bit packages at all. I tried using getlibs to fix this, but it doesn't work (and its error output looks broken, too):

elanthis@stargrazer:~$ getlibs -32 /usr/lib/alsa-lib/libasound_module_pcm_pulse.so
No match found for package /uslialsa-lilibasound_module_pcm_pulse.so
No libraries to download.

Killing pulseaudio will also fix the problem, but long term obviously Ubuntu needs to fix this and offer a 32-bit version of the ALSA Pulse plugin for those stupid 32-bit apps.

Momba
November 20th, 2007, 03:33 PM
Installed it and it worked great. Just wanted to say thank you!

RavanH
November 21st, 2007, 11:21 AM
And Getlibs comes to the rescue again!

I downloaded the new Skype beta 2.0 on http://www.skype.com/intl/en/download/skype/linux/beta/ (supposedly has video support at last) but after installing it

~$ sudo dpgk -i --force-architecture skype*.deb
....
~$ skype
skype: error while loading shared libraries: libXss.so.1: cannot open shared object file: No such file or directory

clearly has more dependencies:

:~$ getlibs /usr/bin/skype
Matched library libXss.so.1 to /gutsy/libs/libxss1
The following i386 libraries will be installed:
/gutsy/libs/libxss1
Continue? (y/n) y
Downloading. Installing libraries ...

:)

Winawer
November 24th, 2007, 01:10 PM
This script saved my bacon with a few programs - thank you so much! :KS

loosetoned
November 25th, 2007, 04:00 PM
Just wanted to say thank you, this script saves hours, it's fantastic. Good work!

malathion
November 26th, 2007, 12:37 AM
sorry, double post!

malathion
November 26th, 2007, 04:29 PM
This script should be integrated into all debian based distros, if you are willing to manage that project. It would help linux newbies even more than now!

Indeed. This is amazing.

This thread really must be stickied in the amd64 forum... you just saved me endless headaches installing 32 bit apps on my 64 bit gusty. Thank you!!

Cappy
December 8th, 2007, 05:07 AM
I am going to do a complete rewrite of getlibs.

New features should include:

Logging
Downloading libraries from your local selected mirror instead of just kernel.org
Option to install libraries by package name
Option to install local libraries
Option to install a library using a link to the package
Ability to remove or upgrade installed 32-bit libraries (at least remove)
Much faster runtime


I was learning shell scripting as I wrote getlibs so it will be easier for me to rewrite getlibs than trying to make the current getlibs do new tricks.
The main goal of the new version will be to allow a user multiple ways to install a library.

I may end up releasing just a few of the possible features in the first 2.0 release so tell me what feature you would like to see first. Now is the time to mention any feature that I haven't listed if you would like to see it in the next getlibs.

NullHead
December 8th, 2007, 12:36 PM
I am going to do a complete rewrite of getlibs.

New features should include:

Logging
Downloading libraries from your local selected mirror instead of just kernel.org
Option to install libraries by package name
Option to install local libraries
Option to install a library using a link to the package
Ability to remove or upgrade installed 32-bit libraries (at least remove)
Much faster runtime


I was learning shell scripting as I wrote getlibs so it will be easier for me to rewrite getlibs than trying to make the current getlibs do new tricks.
The main goal of the new version will be to allow a user multiple ways to install a library.

I may end up releasing just a few of the possible features in the first 2.0 release so tell me what feature you would like to see first. Now is the time to mention any feature that I haven't listed if you would like to see it in the next getlibs.

I would like logging and ability to remove or upgrade installed 32-bt libraries. :D I'm over joyed to hear you're going to make a newer version! Maybe you could add a gui too? lol It's too much to ask! it's already such a wonderful application anyways! :cool:

Brando569
December 12th, 2007, 04:10 PM
wow this seems like an awesome script, i saw a link to it in one of the 64 bit stickies i was reading and decided to check it out. ill test this baby out later on lm-sensors v3 that i was trying to compile earlier and it wouldnt work because of dependancy errors.

Kilz
December 12th, 2007, 05:34 PM
wow this seems like an awesome script, i saw a link to it in one of the 64 bit stickies i was reading and decided to check it out. ill test this baby out later on lm-sensors v3 that i was trying to compile earlier and it wouldnt work because of dependancy errors.

As I understand it, the script doesnt install dependencies for things you want to compile , but for 32bit applications you force install.

Cappy
December 12th, 2007, 06:00 PM
You just need to sudo apt-get install the required packages. Getlibs is for use with pre-compiled binaries (programs).

According the project you need the following required packages:
sudo apt-get install build-essential bison gcc flex sysfsutils perl libsysfs-dev

Kilz
December 12th, 2007, 07:57 PM
You just need to sudo apt-get install the required packages. Getlibs is for use with pre-compiled binaries (programs).


I thought so. Thanks for clarifying that for us Cappy, getlibs is an awesome script.

Cappy
December 22nd, 2007, 06:05 AM
Getlibs v2.00 is done. If you are willing to help try it out for me!
Install:
http://www.boundlesssupremacy.com/Cappy/getlibs/getlibs-2.00-all.deb
Source:
http://www.boundlesssupremacy.com/Cappy/getlibs/getlibs-2.00.sh

I've been using the following to test getlibs:
sudo rm /usr/lib32/libQtCore* /usr/lib32/libQtDBus* /usr/lib32/libQtGui* /usr/lib32/libQtNetwork* /usr/lib32/libdbus-*
sudo getlibs /usr/bin/skype

but you may try something I haven't thought of. I've left debugging messages in for testing. A good command to test is
libpng.so.3
let me know if there are any errors/problems (or if it works perfectly in everything you try!)

Here are some of the most important options:
--file "filename" or -f "filename here" will install a .deb library you have locally on your computer correctly.
--link 'link here' or -w 'link here' will download and install a .deb library given a link
--ldconfig will make sure the newly installed libraries are linked. Skipped otherwise.
--mirror 'mirror address' or -m mirror 'mirror address' will download from the mirror of your choice. Default is the one specified in /etc/apt/sources.list and the backup is http://mirrors.kernel.org/ubuntu/


Logging (NOT YET - depends on everything else)
Downloading libraries from your local selected mirror instead of just kernel.org (CHECK)
Option to install libraries by package name (CHECK)
Option to install local libraries (CHECK)
Option to install a library using a link to the package (CHECK)
Ability to remove or upgrade installed 32-bit libraries (at least remove) (NOT YET - depends on logging)
Much faster runtime (CHECK)


sudo getlibs library/binary/packagename now works. On 64-bit it will install 32-bit packages unless you specify -64.
This means sudo getlibs /usr/bin/skype
sudo getlibs libQtGui.so.4 libQtCore.so.4
sudo getlibs -32 libQtGui.so.4 libQtCore.so.4
sudo getlibs libqt4-core libqt4-gui
sudo getlibs -32 libqt4-core libqt4-gui

will all do the same thing (using the binary path is always better). I'm not sure if this is a good idea. I'm wondering if instead the syntax for packages should only be

sudo getlibs -p libqt4-core libqt4-gui
sudo getlibs --package libqt4-core libqt4-gui

The problem is that getlibs checks to see if there is a file "X" and if it doesn't exist it assumes it is a package. I put a message in when this happens.

$ sudo getlibs abcdef
abcdef is not a file. Assuming this is a package name.

The following i386 packages will be installed: abcdef
Continue [Y/n]? n

wingnux
December 29th, 2007, 06:34 AM
AWESOME!!!

Thank you! It solved my problem with epsxe! =)

BogusJoe
December 31st, 2007, 01:06 PM
Hello Cappy,
adding my Thanks along with the others. I am by no mean an expert at Ubuntu, but have been playing with Linux (as a user) for several years and have always been plauged by Libs not found.
Fantastic Work!

Downloaded your latest version 2.00
Currently using Hardy Heron 8.04 64 bit

Goal: to get Enenmy Territory Quake Wars to work with HH 8.04 Yes ETQW is a 32bit app.

User Puccaso has helped me with the video driver and it works great, so far. Even though it is a test driver. Compiz does not work. Video card is a HD3870. Went through the installation of ETQW, but it needs a lib file. I tried "getlibs ver. 2.00"


bogusjoe@uby64-HH:~/etqw$ ./etqw
./etqw.x86: error while loading shared libraries: libdirectfb-0.9.so.25: cannot open shared object file: No such file or directory

bogusjoe@uby64-HH:~/etqw$ getlibs etqw
Cannot determine the dependencies required by this program, it may be a script:
If this program needs a 32-bit library use:
getlibs -32 i386librarytoinstall.so
If this program needs a 64-bit library use:
getlibs -64 amd64librarytoinstall.so

bogusjoe@uby64-HH:~/etqw$ getlibs -32 etqw.x86
Looking up libdirectfb-0.9.so.25 on web interface:
No match
Looking up libfusion-0.9.so.25 on web interface:
No match
Looking up libdirect-0.9.so.25 on web interface:
No match
Using mirror http://us.archive.ubuntu.com/ubuntu/
bogusjoe@uby64-HH:~/etqw$


I have not tried:


~$ sudo dpgk -i --force-architecture etqw*.deb


Since the actual installer for Quake Wars is "ETQW-client-1.2-full.r5.x86.run" Didn't know if this would work or not? Can you or someone help please?

Cappy
December 31st, 2007, 02:53 PM
Hi, thanks for the post. I now see that hardy is not listed on the web interface so you will need to use the --release option.

This should be getlibs --release gutsy ~/etqw/etqw.x86

If that still isn't working correctly use
getlibs -p libdirectfb-0.9-25 libdirectfb-0.9-25 libdirectfb-0.9-25

BogusJoe
December 31st, 2007, 06:35 PM
Hi, thanks for the post. I now see that hardy is not listed on the web interface so you will need to use the --release option.

This should be getlibs --release gutsy ~/etqw/etqw.x86

If that still isn't working correctly use
getlibs -p libdirectfb-0.9-25 libdirectfb-0.9-25 libdirectfb-0.9-25

Thanks Cappy. The first command worked!
ETQW is trying to run now, but SDL_ListModes ignored. I think I have seen this before and will search more on this.

You and some others on the forums have made the holidays a worthwhile vacation time!

Happy New Year! and Be Safe!

Jinouchi
January 2nd, 2008, 06:30 PM
I'm having trouble installing skype on debian. Here's what I get:


# getlibs skype
No match found for package libQtCore.so.4
No match found for package libQtDBus.so.4
No match found for package libQtGui.so.4
No match found for package libQtNetwork.so.4
No libraries to download.


Why won't it work?

Gavla
January 2nd, 2008, 06:34 PM
Champion! Now I can play Alien Arena!

Cappy
January 2nd, 2008, 07:28 PM
I'm having trouble installing skype on debian. Here's what I get:


# getlibs skype
No match found for package libQtCore.so.4
No match found for package libQtDBus.so.4
No match found for package libQtGui.so.4
No match found for package libQtNetwork.so.4
No libraries to download.


Why won't it work?

Use the new getlibs v2 on the front post

Cappy
January 3rd, 2008, 01:10 AM
getlibs is now v2.01

Let me know if you have any problems with it.

~LoKe
January 3rd, 2008, 01:17 AM
I used the previous version and it works nicely (unfortunately it wasn't the solution I was looking for). It's a great app and I'm definitely keeping it installed.

Thanks!

Anubis
January 3rd, 2008, 10:58 AM
:confused: I don't get why not just run the 32bit *buntu and be done with it?:confused:

But, nice work helping the noobs get there jobs done.

Just an opinion.:cool::cool:

~LoKe
January 3rd, 2008, 12:51 PM
:confused: I don't get why not just run the 32bit *buntu and be done with it?:confused:

Because there are advantages to the 64bit release and it's worth the trouble for a couple 32bit apps.

NullHead
January 3rd, 2008, 01:29 PM
:confused: I don't get why not just run the 32bit *buntu and be done with it?:confused:

But, nice work helping the noobs get there jobs done.

Just an opinion.:cool::cool:

If everyone is still using the older, slower and more developed 32-bit architecture then why would you need a new hardware or newer faster software? Where there is satisfaction there is no innovation. There is huge performance benefits for using 64bit. Using 64bit also shows there is a want for newer faster computers.

chemist109
January 9th, 2008, 10:57 AM
:confused: I don't get why not just run the 32bit *buntu and be done with it?:confused:

But, nice work helping the noobs get there jobs done.

Just an opinion.:cool::cool:

At my work, there are scientists that use 64 bit Linux apps for number crunching and they don't want to have to use an entirely different machine for the more mundane tasks. (Like browsing the web while a simulation is running).

clumsySmurf
January 17th, 2008, 05:00 PM
Please note that on my system (Debian sid) the package lsb-release was not installed. Should be put in the package as a dependency imho.

mtwa
January 18th, 2008, 10:21 AM
Just a quick thank you!
I was attempting to run MeVisLab, a medical image processing application on my Kubuntu 7.10 64bit system. After running your script and updating my video drivers I am in business. Thanks for helping this noob! Cheers, Michael

curdegn
January 20th, 2008, 09:08 PM
Helllo,
I have the following troubles trying to install the missing library Libcurl3 for Zattoo:
----
user@computer:~$ sudo getlibs /usr/bin/zattoo_player
libcurl.so.3: libcurl3
The following i386 packages will be installed:
libcurl3
Continue [Y/n]?
Downloading ...
Failed to download file from http://archive.ubuntu.com/ubuntu/ for http://archive.ubuntu.com/ubuntu/./libcurl3_7.16.4-2ubuntu1_i386.deb
The mirrors do not have the requested file or there is no internet connection
File downloaded successfully from http://mirrors.kernel.org/ubuntu/
ls: /tmp/getlibs.yjuPYW7462/*.deb: No such file or directory
Installing libraries ...
linuxmce@dcerouter:~$
-----
I checked the mentioned ubuntu archive, the required file is there.What is going on? Any advise ?

Cappy
January 21st, 2008, 07:48 PM
getlibs v2.02:
----
Tons of bug fixes

If libGL.so.1 is missing but there is a libGL.so.* library getlibs will link it.

Build options:
--build: Will convert a 32-bit package to a 64-bit package and install it instead of extracting it. Probably the new future default option. Hopefully will fix the "disappearing library" problem. Also will allow packages to be removed.

--savebuild: Saves the built packages to /home/$USER

RavanH
January 22nd, 2008, 05:09 AM
Hi Cappy,

Trying Getlibs to get Gizmo (SIP client, see gizmoproject.com) working on Gutsy64, I ran into an error:

getlibs /usr/bin/gizmo
No match for libsipphoneapi.so.1.7.07.73
No packages to install

I tried getlibs -l libsipphoneapi.so but with similar result...

Any ideas?

--ravan

*Very* small improvement suggestion: make command options 'getlibs -h' and 'getlibs --help' return the little help text that 'getlibs' does?

Cappy
January 22nd, 2008, 01:22 PM
*Very* small improvement suggestion: make command options 'getlibs -h' and 'getlibs --help' return the little help text that 'getlibs' does?

I'll do that =)


libsipphoneapi.so.1.7.07.73 is only available inside the gizmo package. I downloaded http://download.gizmoproject.com/GizmoDownload/gizmo-project_3.1.0.79_libstdc++6_i386.deb and saw it inside to be installed to /usr/lib/libsipphoneapi.so.1.7.07.73
so you should be able to
sudo cp /usr/lib/libsipphoneapi.so.1.7.07.73 /usr/lib32/libsipphoneapi.so.1.7.07.73

or you can try out the beta getlibs feature --build and do
getlibs --build --savebuild -i gizmo-project_3.1.0.79_libstdc++6_i386.deb
which will create a package with just /usr/lib32/libsipphoneapi.so.1.7.07.73 and install it.

RavanH
January 22nd, 2008, 02:23 PM
sudo cp /usr/lib/libsipphoneapi.so.1.7.07.73 /usr/lib32/libsipphoneapi.so.1.7.07.73

or you can try out the beta getlibs feature --build and do
getlibs --build --savebuild -i gizmo-project_3.1.0.79_libstdc++6_i386.deb
which will create a package with just /usr/lib32/libsipphoneapi.so.1.7.07.73 and install it.
Thanks Cappy,

Once again, you saved my day :)

RavanH
January 22nd, 2008, 02:36 PM
or you can try out the beta getlibs feature --build and do
getlibs --build --savebuild -i gizmo-project_3.1.0.79_libstdc++6_i386.deb
which will create a package with just /usr/lib32/libsipphoneapi.so.1.7.07.73 and install it.
So what happens here exactly? Getlibs 'converts' the 32bit package to fit the 64bit filestructure? In that way the proper dir gets used when installing 32bit libs? ---- NEAT!!!

Would it be possible to have Getlibs look in /usr/lib/ for any 32bit libraries it cannot find? So that getlibs /usr/bin/gizmo would result in the libsipphoneapi (if not found for download but found in /usr/lib/) to be copied to /usr/lib32/ ?

Sort of the --build procedure but then afterwards ;)


Anyway, I cannot emphasize enough: Getlibs :guitar:
--ravan

largosblade
January 23rd, 2008, 04:20 PM
Worked just the way you said... Thanks

mastergunner
January 27th, 2008, 10:09 AM
subscribed

mooball
January 31st, 2008, 01:27 AM
Ive been trying to use getlibs on skype and pixel with no luck for a while and finally figured out why - getlibs is finding the wrong URLs for the libs. for instance this is the output from
getlibs pixel

:~/bin/Pixel$ getlibs pixel
libaspell.so.15: libaspell15
The following i386 packages will be installed:
libaspell15
Continue [Y/n]? y
Downloading ...
Failed to download file from for http://mirrors.kernel.org/ubuntu/debpool/main/a/aspell/libaspell15_0.60.5-1ubuntu1_i386.deb
The mirrors do not have the requested file or there is no internet connection
No packages to install

I finally noticed that the URL is wrong, it has the path /ubuntu/debpool/main.... when it looks to me like it should be /ubuntu/pool/main....

So why is it getting the address wrong?

Im using version 2.03

Cappy
January 31st, 2008, 07:40 AM
Please give me the output of
getlibs --verbose -p libaspell15

The file /etc/apt/sources.list using
cat /etc/apt/sources.list

and finally
apt-cache policy libaspell15

Copy and paste each from the terminal into CODE blocks please! Thanks!

lamadredelsapo
January 31st, 2008, 04:24 PM
Great! I was looking for something easy to solve this.

mooball
January 31st, 2008, 05:17 PM
in response to your request for outputs....


$ getlibs --verbose -p libaspell15
The following i386 packages will be installed: libaspell15
Continue [Y/n]? y
queue: debpool/main/a/aspell/libaspell15_0.60.5-1ubuntu1_amd64.deb
Downloading ...
Downloading http://mirrors.kernel.org/ubuntu/debpool/main/a/aspell/libaspell15_0.60.5-1ubuntu1_i386.deb
Failed to download file from for http://mirrors.kernel.org/ubuntu/debpool/main/a/aspell/libaspell15_0.60.5-1ubuntu1_i386.deb
The mirrors do not have the requested file or there is no internet connection
No packages to install


$ cat /etc/apt/sources.list

.. commented lines removed ..

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository. This software is not part of Ubuntu, but is
## offered by Canonical and the respective vendors as a service to Ubuntu
## users.
deb http://archive.canonical.com/ubuntu gutsy partner
deb-src http://archive.canonical.com/ubuntu gutsy partner

.. commented lines removed ..

# Line commented out by installer because it failed to verify:
deb http://au.archive.ubuntu.com/ubuntu/ gutsy main universe restricted multiverse
# deb-src http://security.ubuntu.com/ubuntu gutsy-security multiverse
deb http://eric.lavar.de/comp/linux/debian/ unstable/
deb http://security.ubuntu.com/ubuntu/ gutsy-security universe main multiverse restricted
deb http://au.archive.ubuntu.com/ubuntu/ gutsy-updates universe main multiverse restricted
deb http://eric.lavar.de/comp/linux/debian/ ubuntu/



$ apt-cache policy libaspell15
libaspell15:
Installed: 0.60.5-1ubuntu1
Candidate: 0.60.5-1ubuntu1
Version table:
*** 0.60.5-1ubuntu1 0
500 http://au.archive.ubuntu.com gutsy/main Packages
100 /var/lib/dpkg/status


I should note that the problem happens with all libs, not just aspell, Ive not yet been able to download a single lib.

Cappy
January 31st, 2008, 08:18 PM
Thank you mooball,
I've corrected this bug. I'm uploading it shortly after this is posted. Just install the new version from the first post in this thread.

mooball
February 1st, 2008, 12:46 AM
Yippie, it works, thanks for that.

Tom

crjackson
February 9th, 2008, 02:38 PM
Thanks Cappy, just used getlibs to help install amazonmp3 downlolader. I don't know how to make it grab all the libs at once, but it got them for me one at a time until the app was installed.

wraund
February 18th, 2008, 05:46 PM
Thank you for showing me this :)

It has revolutionized my installation of 32 programs on to 64 :)

Cappy
February 20th, 2008, 04:17 AM
The packages.ubuntu.com web interface changed. Unfortunately this week is completely busy with tests and projects due to the midterm. I probably won't be able to fix the problem until Saturday. Common installs such as Skype will still work.

This only affects library lookups that are not listed in getlibs. I recommend you use the package name manually sudo getlibs -p packagename1 packagename2
or install and configure apt-file and use the --apt-file option.

On the plus side, packages.ubuntu.com now includes Hardy!

Cappy
February 25th, 2008, 06:19 PM
Okay, the new getlibs is uploaded. It has support for the new packages.ubuntu. Everyone who has getlibs should upgrade or else you will get messages about "No match found" if the library isn't one I specifically put in an internal list with getlibs.

I also made some minor changes to getlibs to improve the compatibility with other languages. Also added support for mirrors that don't end with / (which they should), and mirrors that are www. or https: addresses.

crgutierrez
February 25th, 2008, 06:51 PM
Would this allow me to install and run i386.deb iscan drivers*** in my 7.10 64 bit Ubuntu????(****epson V350 PHOTO scanner driver). Gracias!

Cappy
February 25th, 2008, 07:11 PM
Some people have had success doing that. I suggest you start a new thread if you have problems though.

Cappy
March 1st, 2008, 10:44 PM
Getlibs 2.06 released. Fixes a problem where files will report as being in the "BinaryfileXmatches" package. That's actually "Binary file X matches" without the spaces and it was caused by some text that wasn't in parenthesis =(

Omnios
March 1st, 2008, 10:48 PM
Hi how does this work? I have a Dell SPS 1530 with a core 2 duo 2.2ghz. What I am wondering is would I be able to install Kubuntu 64bit and still use 32bit programs with this? I really would like to try 64bit but from what I read so far is 64bit is not totally ready yet and will that resolve these issues?

crjackson
March 2nd, 2008, 07:49 AM
What I am wondering is would I be able to install Kubuntu 64bit and still use 32bit programs with this?

Yes. It's one of the most aswsome scripts you will find. Actually, you can do that anyway, but getlibs makes it much easier and more automated.

64bit IS ready to rock/roll already. Don't wait any longer.

vijaym
March 4th, 2008, 08:35 AM
Hey Cappy
thanks for the good script. works perfectly for me.

vijay

rmtatum
March 10th, 2008, 10:34 PM
I used getlibs to install Gizmo. The programs loads and is able to receive calls. However the interface is broken and missing images. Also the dialpad tab does not show the dialpad.

Below is some of the error output from the program:

(gizmo:8338): Gtk-CRITICAL **: gtk_icon_set_new_from_pixbuf: assertion `pixbuf != NULL' failed

(gizmo:8338): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed

(gizmo:8338): Gtk-CRITICAL **: gtk_icon_factory_add: assertion `icon_set != NULL' failed

(gizmo:8338): Gtk-CRITICAL **: gtk_icon_set_unref: assertion `icon_set != NULL' failed

(gizmo:8338): Gtk-CRITICAL **: gtk_icon_set_new_from_pixbuf: assertion `pixbuf != NULL' failed

(gizmo:8338): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed

(gizmo:8338): Gtk-CRITICAL **: gtk_icon_factory_add: assertion `icon_set != NULL' failed

(gizmo:8338): Gtk-CRITICAL **: gtk_icon_set_unref: assertion `icon_set != NULL' failed

Cappy
March 11th, 2008, 12:24 AM
Try sudo apt-get install libgtk2.0-0 gconf2 libstdc++6 libasound2 zlib1g

rmtatum
March 11th, 2008, 12:51 AM
I have the afore mentioned packages installed already.

rmtatum
March 11th, 2008, 12:52 AM
I'm running Kubuntu Hardy (with Ubuntu-desktop installed).

soxs
March 11th, 2008, 04:49 AM
you might need gtk2-engines-pixbuf or libgdk-pixbuf2

rmtatum
March 11th, 2008, 05:59 AM
I had gtk2-engines-pixbuf installed already, and I installed libgdk-pixbuf2 and libgdk-pixbuf-gnome2. I still have the error.

lynx shadow
March 11th, 2008, 07:24 AM
i've been trying to get openproj and opera 9.5 to run on my intel core2 duo notebook, installed with ubuntu 7.10 gutsy, for about 2 weeks now. i'm new with linux and i've tried loading all libs, jre6, and anything else i can get my hands on that i read about in different forums.

i still haven't got openproj installed, but i was able to install opera 9.50. the problem is when i run it, it crashes after 5 seconds or so.

this thread tells me that there's something wrong per se with jave. i'd like to try out the commands suggested, but i'm not sure whether i can just type 'opera' or 'openproj' instead of 'skype', because that would be the way i'd go.

can you tell me if you thing the suggested commands would solve my problem?

i would really appreciate any suggestions you may have.

thanks

soxs
March 11th, 2008, 07:38 AM
I had gtk2-engines-pixbuf installed already, and I installed libgdk-pixbuf2 and libgdk-pixbuf-gnome2. I still have the error.
what about gob2? If it will still not run, I have no clue what is missing.

rmtatum
March 11th, 2008, 09:53 PM
I installed gob2 but that didn't fix the error.

soxs
March 12th, 2008, 08:18 AM
I suggest you to start another thread. This seems to get somewhat more difficult to fix.

Rogers
March 12th, 2008, 03:42 PM
This should become part of the 64bit distro, it solves all 64bit issues.

Repgahroll
March 13th, 2008, 03:02 PM
Oh, man!

This just saved my life :D (my fingers at least)

No more 32-bit chroot! Now it's possible to install any 32-bit package without issues!

THANKYAU VARIE MUCHE!!!

Cappy
March 13th, 2008, 06:42 PM
this thread tells me that there's something wrong per se with jave. i'd like to try out the commands suggested, but i'm not sure whether i can just type 'opera' or 'openproj' instead of 'skype', because that would be the way i'd go.


It will if the problem is a missing library. You have to run "opera" on the command line to see what the problem is.

/usr/bin/opera is actually a script that runs the actual opera binary that is elsewhere though. It's still not hard though.

grep 'BINARYDIR=/' /usr/bin/opera

will tell you. Or just looking in the file.
Or
getlibs `grep 'BINARYDIR=/' /usr/bin/opera | grep -o '/.*'`/opera
to make it easy

curdegn
March 16th, 2008, 11:49 AM
Hello,

Having some problems using getlibs to install the necessary 32bit libraries for the zatto player on the ubuntu based LinuxMCE system;

sudo getlibs /usr/bin/zattoo_player
.......
.......
Downloading ...
Failed to download file http://archive.ubuntu.com/ubuntu/./libcurl3_7.16.4-2ubuntu1_i386.deb
The mirrors do not have the requested file or there is no internet connection.


Well I do have an internet connection......
Has anybody an idea where the problem is?

Following my source.list:

deb file:/usr/pluto/deb-cache/ ./
deb http://archive.ubuntu.com/ubuntu/ gutsy main restricted multiverse universe
deb http://archive.ubuntu.com/ubuntu/ gutsy-security main restricted multiverse universe
deb http://archive.ubuntu.com/ubuntu/ gutsy-updates main restricted multiverse universe
deb http://linuxmce.com/ubuntu/ ./
deb http://deb.linuxmce.com/ubuntu/ 20dev_ubuntu main
deb http://deb.linuxmce.com/ubuntu/ replacements_ubuntu main


Thanks a lot

Cappy
March 16th, 2008, 02:56 PM
It may be a change your distro made.
apt-cache show libcurl3 | grep '\.deb'
may show the problem.

That first lines in your sources may also be the problem. The Filename: field may be pointing at your local disk (which would explain the './').

You can use the getlibs -w option. For instance,
getlibs -w http://mirror.cc.columbia.edu/pub/linux/ubuntu/archive/pool/main/c/curl/libcurl3_7.16.4-2ubuntu1_i386.deb

curdegn
March 16th, 2008, 05:29 PM
Dear Cappy,

Thanks for the answer. The getlibs -w option worked fine and zattoo is not missing any library any more.
sudo getlibs /usr/bin/zattoo_player
This application isn't missing any dependencies


But unfortunately the zatoo_player does still not start but end in a "Segmentation fault".

Is there a way to find out what the problem is?

Thanks again and regards
Curdegn

Cappy
March 17th, 2008, 12:01 AM
strace can tell you why/where it is crashing but segmentation faults can be hard to debug sometimes.

rmtatum
March 20th, 2008, 11:33 AM
I think one of the packages in Ubuntu Hardy has a bug. I did a fresh install of Kubuntu Hardy Alpha 5 KDE4 in a virtual machine and then installed ia32-libs and gconf2. I then installed gizmo and getlibs. I still had the error.

However, following the same procedure as mentioned above with Kubuntu Gutsy produced no error.

tatojo
March 20th, 2008, 02:02 PM
I just installed Acrobat Reader 8 in a hardy-server-amd64 alpha 6 with
sudo dpkg -i --force-all AdobeReader_enu-8.1.2-1.i386.deb

After asked for sudo password, had this output:
dpkg - warning, overriding problem because --force enabled:
package architecture (i386) does not match system (amd64)
Selecting previously deselected package adobereader-enu.
(Reading database ... 194505 files and directories currently installed.)
Unpacking adobereader-enu (from AdobeReader_enu-8.1.2-1.i386.deb) ...
Setting up adobereader-enu (8.1.2) ...

and it's working!!
Is that all???

Have to say that I enter:
getlibs /usr/bin/acroread
Cannot determine the dependencies required by this program, it may be a script:
If this program needs a 32-bit library use:
getlibs -l i386librarytoinstall.so
If this program needs a 64-bit library use:
getlibs -64l amd64librarytoinstall.so

So, I typed:
getlibs -l i386librarytoinstall.so
No match for i386librarytoinstall.so
No packages to install

I want to understand if it was enough to install getlibs, and everything was setup automatically!

jiyosub
March 26th, 2008, 07:43 PM
I'm having the exact same problem. I still have no solution too. :(


I think one of the packages in Ubuntu Hardy has a bug. I did a fresh install of Kubuntu Hardy Alpha 5 KDE4 in a virtual machine and then installed ia32-libs and gconf2. I then installed gizmo and getlibs. I still had the error.

However, following the same procedure as mentioned above with Kubuntu Gutsy produced no error.

crgutierrez
March 31st, 2008, 10:29 AM
Thnaks. You would like to know that I could get VariCad Viewer (i386) to work in my 64 bit 7.10 with the getlibs. Not so much luck with iscan for my epson scanner

MasterSushi
April 3rd, 2008, 07:45 PM
I can't seem to figure out how to use the --build or --savebuild commands. I would like to convert a 32bit .deb to a 64bit .deb using these commands but I keep getting the following output.


MasterSushi@Ubuntu:~$ getlibs -l --build --savebuild gizmo-project_3.1.0.79_libstdc++6_i386.deb
basename: invalid option -- -
Try `basename --help' for more information.
No match for
No match for gizmo-project_3.1.0.79_libstdc++6_i386.deb
No packages to install


I am guessing that I simply don't understand how to use the --build or --savebuild commands. Does anyone know how to do what I am attempting using getlibs?

Cappy
April 3rd, 2008, 07:48 PM
Look here:
http://ubuntuforums.org/showpost.php?p=4185776&postcount=116

MasterSushi
April 4th, 2008, 04:04 PM
After looking over that post I am guessing that the --build and --savebuild functions do not do what I thought they did.

I thought I would be able to create a .deb file that would allow a 32 bit application to be installed on a 64 bit system using the --build and --savebuild functions. It appears that this extracts libraries from a 32 bit .deb and then places them into a new .deb that can be installed on a 64 bit system, but the binaries are lost in the newly created .deb file.

Cappy
April 4th, 2008, 04:13 PM
32-bit applications can be easily installed with dpkg --force-all -i packagename.deb

getlibs helps with the libraries in the process.

MasterSushi
April 4th, 2008, 06:04 PM
I know, and getlibs works great to fix any missing 32 bit libraries. I was hoping to be able to create a .deb file for someone so that they could click on the .deb and install the application. I thought that is what the --build --savebuild commands would do. I misunderstood their purpose.

kuja
April 15th, 2008, 01:42 AM
This package is extremely useful. I'd love if it were in the ubuntu repositories. It's probalby too late for Hardy now, but a lovely script none-the-less Cappy. Maybe you could find someone to help you get the package into the archives in #ubuntu-devel on IRC Cappy?

tpost001
April 15th, 2008, 01:49 AM
Thanks Cappy. I followed your suggestions after forcing the i386 version of SKYPE and getting nowhere, I also added the missing libraries with no luck. But after clicking on your link and installing getlib and following your advice, I got SKYPE to work on my amd64 machine running Ubuntu 7.10. Thanks.

rmtatum
April 22nd, 2008, 10:28 PM
I'm having the exact same problem. I still have no solution too. :(
The latest updates to Ubuntu Hardy have fixed the problems I had with Gizmo.

andrebrait
April 27th, 2008, 05:57 AM
this should be soon included in ubuntu's repos

Asere
April 30th, 2008, 06:22 PM
Hi all,

I've been trying hard to get Skype installed on my Ubuntu 8.04 64 bit system.

When I want to run the sudo dpkg -i --force-all '/home/username/Escritorio/skype-debian_2.0.0.68-1_i386.deb' I get the responseunable to resolve host hostname

When running sudo dpkg -i --force-architecture skype-*.deb the installation starts, but gives the response wrong architecture 'i386'

I have already installed the two needed libraries.

I run a Intel Dual Core 2 CPU.

Maybe something with the root account messed up? Earlier I already noticed that the OS has difficulties when it's supposed to be prompting for the userpassword while installing something.
Any way to repair this?

Please give detailed instructions - newbie ;)
thanks

RavanH
May 2nd, 2008, 09:11 AM
Hi all,

I've been trying hard to get Skype installed on my Ubuntu 8.04 64 bit system.

When I want to run the I get the response

When running the installation starts, but gives the response

I have already installed the two needed libraries.

I run a Intel Dual Core 2 CPU.

Maybe something with the root account messed up? Earlier I already noticed that the OS has difficulties when it's supposed to be prompting for the userpassword while installing something.
Any way to repair this?

Please give detailed instructions - newbie ;)
thanks

That's funny. Just using sudo dpkg -i --force-all skype-*.deb and then getlibs /usr/bin/skype worked fine on my Ubuntu 8.04 64 bit system...

Sef
May 3rd, 2008, 05:05 AM
Thank you very much Cappy. It seems to be working. I will try it out later.

Update: Gyachi is up and running. :)

Sarteck
May 5th, 2008, 03:22 AM
Thank you SOOOOOO much! ^_^

dfreer's site is down, and I've been having trouble getting pSX working. With getlibs, not a problem! Yopu're a lifesaver. :3

jfollmann
May 6th, 2008, 12:20 AM
Wow, thanks! I used this to get Amazon MP3 downloader (which only has 32-bit binaries available) working on my 64-bit Hardy installation. I'm not sure I could have done it otherwise.

I can has DRM-free music now!

8086
May 7th, 2008, 02:57 AM
Just tried your script on Opera, and it worked great!

RavanH
May 11th, 2008, 03:12 PM
Hi Cappy,

I am trying to make my Cairo Dock how-to a bit more 'effective' by writing instructions for getting all dependencies for the plugins deb package that has to be installed alongside the cairo-dock deb (you probably know what i am talking about). The latest version has all kinds of new dependencies that

By running the getlibs /usr/bin/cairo-dock all dependencies for the dock itself are adequately solved but the plugins require more... I was hoping that something like getlibs -i cairo-dock-plug-ins_*.deb would do the trick but that it doesn't (should it?).

Is there any way (option) to get getlibs to install all dependencies for any deb package -- be it with or without installing that package?

At this moment I can only think of the following instruction to get all plugin dependencies in place: sudo getlibs -p libgnome2-0 gvfs libgnomevfs2-0 libgnome-keyring0 libavahi-glib1 libavahi-common3 libavahi-client3 libgnomeui-0 libvte9 libbonoboui2-0 and for xfce additionally sudo getlibs -p libgamin0 libstartup-notification0 libthunar-vfs-1-2 libexo-0.3-0 libxfce4util4 libhal-storage1 (as far as I figured out so far ;) )

And these dependencies may change in time, as more plugins get developed ofcource...

But before I go and paste these long commands into the how-to, two questions:
1. any way to use getlibs to do these dependencies automated?
2. does getlibs need sudo?

Thanks for all your help,
Ravan

negora
May 11th, 2008, 03:29 PM
I just wanted to thank Cappy for its excellent program. I'm still a novice on Linux and this thing is helping me a lot to run some necessary 32 bits apps on Kubuntu 64 bits. Thank you!!!

NullHead
May 11th, 2008, 05:05 PM