ubuntu16.10にvmware-viewerをインストール(完了)

前回の続きです。まだ頑張っています。

前回に引き続き、vmware-viewのインストールをします。
困っていたのはエラーメッセージでした。

~$ vmware-view
/usr/lib/vmware/view/bin/vmware-view: error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory

共有オブジェクトファイルがないというメッセージですが、たぶん何かのファイルがないのか関連付けが取れていないのか、ということは推測できますが、対応方法がわかりません。

こちらのサイトを参考にしてやってみました。
発声練習:動的ライブラリ・共有ライブラリへのリンクミスへの対応

調べてみると、lddというコマンドでライブラリのリンク状態がわかるとのことでした。
アプリケーションで必要としているライブラリはアプリケーションのフォルダにそのまま持っていくのではなく、リンクという形で使っているんですね。これも最新のものを使うという知恵でしょうか。

~$ ldd vmware-view
ldd: ./vmware-view: そのようなファイルやディレクトリはありません

(´・ω・`)

whichコマンドで探します。

~$ which vmware-view
/usr/bin/vmware-view

なるほど。パスが通っていませんでした。

~$ ldd /usr/bin/vmware-view
動的実行ファイルではありません

(´;ω;`)

~$ type /usr/bin/vmware-view
/usr/bin/vmware-view は /usr/bin/vmware-view です

(#^ω^)

~$ cat /usr/bin/vmware-view
#!/bin/bash
#
# Copyright 2017 VMware, Inc. All rights reserved.
#
# This script manages the VMware Horizon Client
#

libpath="/usr/lib/vmware"
binPath="/usr/lib/vmware/view"
(省略)

どうやら(私にほとんど知識のない)スクリプトファイルのようです。

このあとvmware-installerというスクリプトを見つけたので、

/usr/bin$ sudo vmware-installer

とやってみましたが、

Magic number of 0x6******* does not match

(*´Д`)

~$ sudo apt-get install libpng12
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
E: パッケージ libpng12 が見つかりません

もういちど原点回帰します。

~$ vmware-view
/usr/lib/vmware/view/bin/vmware-view: error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory

先ほどとファイルのパスが変わって深いところからメッセージが出ています。

~$ ldd /usr/lib/vmware/view/bin/vmware-view

とやってみたら、をを、リンクを示す結果が出てきたではありませんか。

(あまりにたくさんあるので、not foundだけひっぱりました)

libpng12.so.0 => not found
libudev.so.0 => not found
libssl.so.1.0.2 => not found
libcrypto.so.1.0.2 => not found

ないものはまずインストールしますがlocateで探してみます。

locate libpng

libpng16がありました。しかし12はありません。

RStudioのインストールに倣って、Debianのサイトから古いパッケージを落としてきます。
http://ftp.ca.debian.org/debian/pool/main/libp/libpng/
http://ftp.ca.debian.org/debian/pool/main/libp/libpng/libpng12-0_1.2.50-2+deb8u3_amd64.deb

こうやって古いバージョンも丁寧に残されているので助かりますね。サポートの有無ではなく個人に対応できる環境を整備するということはとても大切です。

ダウロードしたら程なくUbuntu Softwareが起動してあっという間にインストール完了。便利だがセキュリティには注意せねば。

もう一度、vmwareの起動コマンドを叩きますと、今度は、libudevがないというメッセージ。
再度、Debianのサイトを探しますが、どうもlibudevはありません。Ubuntuのサイトも初めて探してみましたが、やはりないのです。万事休すか!

そこでリンクコマンドを思い出しました。この際、libudevを諦めて、libudev1を使うことにします。

~$ ln -sf libudev.so.0 /lib/x86_64-linux-gnu/libudev.so.1
ln: '/lib/x86_64-linux-gnu/libudev.so.1' を削除できません: 許可がありません

おっと。削除という危険な言葉が。しかしsudoを忘れて権限がなかったため救われました。

~$ ln -sf /lib/x86_64-linux-gnu/libudev.so.1 libudev.so.0

として、望みを託し

~$ vmware-view

でついにvmwareのクライアントが開きました。

※以下が残っていますが、特に困ったメッセージが出ないのでとりあえず放置。
libssl
libcrypto

Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA


計算式を埋めてください * Time limit is exhausted. Please reload CAPTCHA.