机の中に眠っていたLeap Motionを数年ぶりに使ってみようと思う。
Ubuntuに Leap Motion SDKをインストールした作業メモです。
環境
- Ubuntu 16.04
- Leap Motion SDK 2.3.1
SetUp
公式サイトからLinux用のSDKをダウンロード
- V2 Tracking — Leap Motion Developer
- Leap_Motion_SDK_Linux_2.3.1.tgz
cd Downloads
tar xvzf Leap_Motion_SDK_Linux_2.3.1.tgz
cd LeapDeveloperKit_2.3.1+31549_linux
sudo dpkg -i Leap-2.3.1+31549-x64.deb
エラーが発生した。leap deamonがない。
Failed to start leapd.service: Unit leapd.service not found.
dpkg: パッケージ leap の処理中にエラーが発生しました (--install):
サブプロセス インストール済みの post-installation スクリプト はエラー終了ステータス 5 を返しました
ureadahead (0.100.0-19) のトリガを処理しています ...
ureadahead will be reprofiled on next reboot
処理中にエラーが発生しました:
leap
解決策がForumにあった。パッチを当てればいいらしい。(パッチは結局失敗する、後述)
- Leap Motion SDK fails to install properly on Ubuntu 15.04 - Customer Support - Leap Motion Community
Download the .tgz file from https://www.leapmotion.com/setup120, extract, and download the patch file to /tmp/patch:
tar xzf Leap_Motion_Setup_Linux_2.3.1.tgz
cd Leap_Motion_Installer_Packages_release_public_linux
wget -O /tmp/patch https://gist.githubusercontent.com/jmwilson/8e6c579eac5fa7fa9f0d/raw/0b597ceb1f8184952bf067267ac4171691949068/patch
Extract the .deb file into a new leap directory and enter it:
dpkg-deb --raw-extract Leap-2.3.1+31549-x64.deb leap
cd leap
Patch the contents of the current directory:
patch -p2 </tmp/patch
Go back to the parent directory and build a new .deb file:
cd ..
fakeroot dpkg-deb --build leap (this can take a while...)
Install the patched .deb:
sudo dpkg --install leap.deb
patchを当てても動かなかった。他の人も同様の症状がでているみたい。
解決策がforumにあった。
1 - After the install failure, I simply uninstalled with:
sudo dpkg -r leap
2 - Now, with no leap installed yet, I followed the post above and just created the file as mentioned there (I used the terminal to write the following command, to use the nano text editor as root user):
sudo nano /lib/systemd/system/leapd.service
3 - I pasted that content (reproduced here for easiness):
(also please note that on Ubuntu terminal, you paste with CTRL+SHIFT+V instead of just CTRL+V)
# Found by Kevin Cole 2014.11.22 at
# https://github.com/atejeda/leap-fedora-rpm
#
# Remember to:
#
# ln -s /lib/systemd/system/leapd.service /etc/systemd/system/leapd.service
# systemctl daemon-reload
#
[Unit]
Description=LeapMotion Daemon
After=syslog.target
[Service]
Type=simple
ExecStart=/usr/sbin/leapd
[Install]
WantedBy=multi-user.target
4 - Saved (CTRL+O then ENTER), and exited (CTRL+X)
5 - Still using the terminal, executed the two commands from that same post, BUT I included the sudo prefix to run them as root user:
sudo ln -s /lib/systemd/system/leapd.service /etc/systemd/system/leapd.service
sudo systemctl daemon-reload
6 - All is right now and we can properly install. So, I just installed the original package:as in the official Leap guide:
sudo dpkg --install Leap-2.3.1+31549-x64.deb
(please just note that Im using a x64 Ubuntu, so I installed the 64 bits package)
7 - Done!!!
これでうまくいった!
確認
LeapControlPanelを起動する。ツールバーにLeap Motionのアイコンがでて、緑色になった。
試しに、Diagnostic Visualizerを起動してみる。手が正しくトラッキングされていることが分かる。