KonaLinux > 最新のpcmanfmをインストール

LXDE:PCManFM build and setup guide - LXDE.org
Since 2010, PCManFM has undergone a complete rewrite from scratch. So the new PCManFM is totally different from the old (legacy) 0.5.x series.

元のバージョン


$ dpkg -l pcmanfm
ii  pcmanfm                           0.9.10-3              i386                  extremely fast and lightweight file manager

先に結論を書くと


$ sudo apt-get -y --force-yes install -t wheezy-backports pcmanfm
$ dpkg -l pcmanfm
ii  pcmanfm                           1.2.3-1~bpo70+1       i386                  extremely fast and lightweight file manager
これが一番確実

以下ソースから入れようとして失敗したLog


Install all required dependencies:


sudo apt-get install dpkg-dev autoconf automake autotools-dev intltool libglib2.0-dev libgtk2.0-dev libmenu-cache1-dev libtool pkg-config

PCManFM をダウンロード


Libfm をダウンロード


Compile and install components

libfm

tar xf libfm-1.2.3.tar.xz
cd libfm-1.2.3
./configure --prefix=/usr --disable-actions && make
DEB_MULTIARCH=`dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null` && sudo rm -f /usr/lib/$DEB_MULTIARCH/libfm-*
sudo make install-strip

pcmanfm

tar xf pcmanfm-1.2.3.tar.xz
cd pcmanfm-1.2.3
./configure --prefix=/usr && make
sudo make install-strip

pcmanfm 起動時にエラー

$ pcmanfm
pcmanfm: error while loading shared libraries: libfm-gtk.so.1: cannot open shared object file: No such file or directory

ldd `which pcmanfm`
linux-gate.so.1 =>  (0xb7727000)
libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xb75db000)
libgmodule-2.0.so.0 => /usr/lib/i386-linux-gnu/libgmodule-2.0.so.0 (0xb75d6000)
libfm-gtk.so.1 => not found

リンクされてない。そこで、

$ sudo touch /etc/ld.so.conf.d/pcmanfm.conf
$ emacs /etc/ld.so.conf.d/pcmanfm.conf
/usr/lib
/usr/lib/libfm/modules

として、

$ sudo ldconfig

とする。

確認

$ sudo ldconfig -p | grep libfm
libfm.so.4 (libc6) => /usr/lib/libfm.so.4
libfm.so.1 (libc6) => /usr/lib/i386-linux-gnu/libfm.so.1
libfm.so (libc6) => /usr/lib/libfm.so
libfm-gtk.so.4 (libc6) => /usr/lib/libfm-gtk.so.4
libfm-gtk.so (libc6) => /usr/lib/libfm-gtk.so
libfm-extra.so.4 (libc6) => /usr/lib/libfm-extra.so.4
libfm-extra.so (libc6) => /usr/lib/libfm-extra.so

あれ、やっぱり「libfm-gtk.so.1」なんてないぞ。

インストールログを見ると
libtool: install: (cd /usr/lib && { ln -s -f libfm-gtk.so.4.0.3 libfm-gtk.so.4 || { rm -f libfm-gtk.so.4 && ln -s libfm-gtk.so.4.0.3 libfm-gtk.so.4; }; })
libtool: install: (cd /usr/lib && { ln -s -f libfm-gtk.so.4.0.3 libfm-gtk.so || { rm -f libfm-gtk.so && ln -s libfm-gtk.so.4.0.3 libfm-gtk.so; }; })
ということをやっている。

確認

$ cd /usr/lib
$ ls -la | grep libfm-gtk
-rw-r--r--   1 root    root       574666 11月  9 11:03 libfm-gtk.a
-rwxr-xr-x   1 root    root         1232 11月  9 11:03 libfm-gtk.la
lrwxrwxrwx   1 root    root           18 11月  9 11:03 libfm-gtk.so -> libfm-gtk.so.4.0.3
lrwxrwxrwx   1 root    root           18 11月  9 11:03 libfm-gtk.so.4 -> libfm-gtk.so.4.0.3
-rwxr-xr-x   1 root    root       427568 11月  9 11:03 libfm-gtk.so.4.0.3

ということで、
/usr/lib$ sudo ln -s -f libfm-gtk.so.4.0.3 libfm-gtk.so.1

確認
$ sudo ldconfig -p | grep libfm
libfm.so.4 (libc6) => /usr/lib/libfm.so.4
libfm.so.1 (libc6) => /usr/lib/i386-linux-gnu/libfm.so.1
libfm.so (libc6) => /usr/lib/libfm.so
libfm-gtk.so.4 (libc6) => /usr/lib/libfm-gtk.so.4
libfm-gtk.so (libc6) => /usr/lib/libfm-gtk.so
libfm-extra.so.4 (libc6) => /usr/lib/libfm-extra.so.4
libfm-extra.so (libc6) => /usr/lib/libfm-extra.so

こんどこそ
$ pcmanfm
Segmentation fault

あら。

気を取り直して、wheezy-backports からインストールしてみる。
JFYI. I hope that 1.2.1 versions of libfm and pcmanfm will be uploaded to the wheezy-backports 
repository later so it will be much easier for you to use it.
http://sourceforge.net/p/pcmanfm/bugs/885/#8766

$ sudo apt-get -y --force-yes install -t wheezy-backports pcmanfm

$ dpkg -l pcmanfm
ii  pcmanfm                           1.2.3-1~bpo70+1       i386                  extremely fast and lightweight file manager

さあどうだ。
$ pcmanfm
** Message: x-terminal-emulator has very limited support, consider choose another terminal

やった!
最終更新:2015年11月09日 12:38