Ubuntu 64でGame Dev Tycoonを実行しようとしています。上記のオブジェクトを要求します。
私は走りましたがsudo apt-get install libudev1:i386
、すでにインストールされています。
私は持っている/lib/i386-linux-gnu/libudev.so.1
が、ノーlibudev.so.0
どこでも。
Ubuntu 64でGame Dev Tycoonを実行しようとしています。上記のオブジェクトを要求します。
私は走りましたがsudo apt-get install libudev1:i386
、すでにインストールされています。
私は持っている/lib/i386-linux-gnu/libudev.so.1
が、ノーlibudev.so.0
どこでも。
回答:
64ビットUbuntuの場合、32ビットlibudev0パッケージに含まれています。
次のコマンドでインストールできます:
sudo apt-get install libudev0:i386
このパッケージは14.04でUbuntuから削除されました。古いバージョンからインストールする必要があります。
修正するために、私はリンクlibudev.so.1
しましたlibudev.so.0
:
sudo ln -sf /lib/$(arch)-linux-gnu/libudev.so.1 /lib/$(arch)-linux-gnu/libudev.so.0
sudo ln -sf /lib/i386-linux-gnu/libudev.so.1 /lib/i386-linux-gnu/libudev.so.0
私が見つけた最も簡単な方法は、.deb(64ビットダウンロードと32 ビットダウンロードへの直接リンク)をダウンロードし、ダブルクリックしてインストールするか、dpkgを使用してインストールすることです。
dpkg -i libudev0_175-0ubuntu9_amd64.deb
ubuntuの以前のバージョンでは、このパッケージは公式リポジトリで利用可能でした。以下を使用してインストールできます。
sudo apt-get install libudev0:i386
別のプログラムでも同じ問題がありましたが、ショーンの受け入れられた答えはまったく役に立ちませんでした。64ビット13.04のアップグレードインストールでは、libudev0は64ビット形式でもi386形式でも使用できません。そして、ia32-libsはすでにインストールされています。サイコロはありません。
私がしなければならなかったのは、わずかに修正されたバージョンのsenshikazeのより技術的なソリューションでした。x86_64 libディレクトリでlibudev.so.0をlibudev.so.1に手動でシンボリックリンクしました。
cd /lib/x86_64-linux-gnu/
sudo ln -sf libudev.so.1 libudev.so.0
これは私のためにそれを修正しました。
Node Webkitからnw実行可能ファイルを使用しようとすると、このエラーが発生する場合があります。このような:
./nw: error while loading shared libraries: libudev.so.0: cannot open shared object file: No such file or directory
バイナリのASCII文字列を変更できる16進エディタを入手してください。hexedit:
sudo apt-get install hexedit
。cd ~/Dokumenty/node-webkit-*
。sudo
ます。
sudo hexedit nw
。libudev.so.0
ASCII文字列として検索:
libudev.so.0
。0
するlibudev.so.0
と1
、次のようになりますlibudev.so.1
。
0
してlibudev.so.0
文字列を選択します。できました。これは、nwの代わりにAtraciファイルを16進編集することを除いて同じ手順に従う場合のAtraciバイナリの問題も修正します。
cat nw | sed s/libudev.so.0/libudev.so.1/ > fixed_nw
、chmod a+x fixed_nw
その後、あなたはそれを実行することができ、何もインストールする必要はありません
ここでUbuntu 14.04で動作する唯一の答えは受け入れられた答えであり、多くのコメントがこれが将来のシステムに問題を引き起こす可能性があることを指摘しているので(私は自分自身については知りませんが)妥協を思いつきました。このスクリプトは、(端末で)rootパスワードを要求します。シンボリックリンクを作成し、アプリケーション(私の場合はポップコーンタイム)を起動します。アプリケーションを終了すると、既存のsudoセッションを使用してシンボリックリンクが削除されます。
#!/bin/sh
sudo ln -sf /lib/i386-linux-gnu/libudev.so.1 /lib/i386-linux-gnu/libudev.so.0
./Popcorn-Time #replace this line with the path to the executable you want to launch
sudo rm /lib/i386-linux-gnu/libudev.so.0
これは、32ビットUbuntu 15.04で同じ問題を解決するために使用したものです。
cd i386-linux-gnu
sudo ln -sf libudev.so.1 libudev.so.0
更新 実行したいプログラムをラップするbashスクリプトを作成しました。それをローカルのbinフォルダーに追加して、シェルスクリプトをコピーして貼り付けたり実行したりせずにプログラムを起動するだけです。
#!/bin/bash
ProgramToExecute="/PATH/TO/PROGRAM" #Example: $HOME/dart/./DartEditor
system=$(uname -m) #Returns x86_64 on 64 bit systems
libdir="/lib/$system-linux-gnu"
libudev1="$libdir/libudev.so.1"
if [ ! -f $libudev1 ]
then
#check if an i386 folder exist because ' uname -m' returns i686 instead of i386.
libdir="/lib/i386-linux-gnu"
libudev1="$libdir/libudev.so.1"
#if none of the lookups return a file, this script exits,
BreakUpNotice="This $libudev1 isn't working out. It's not you
it's me. Or maybe you forgot to install libudev1 library.
sudo apt-get install libudev1 "
[ ! -f $libudev1 ] && echo $BreakUpNotice && exit 0
fi
libudev0="$libdir/libudev.so.0"
echo "$libudev1 found."
sudo ln -sf $libudev1 $libudev0
sudo -k #revoke sudo
$($ProgramToExecute)
NoticeAfterExec="Enter sudo to del libudev link (recommended) or press CTRL+C to cancel."
RmSuccess="And $libudev0 link is gone."
RmFailed="Whaat? $libudev0 still exists."
echo $NoticeAfterExec
sudo rm $libudev0
sudo -k
[ ! -f "$libudev0" ] && echo $RmSuccess || echo $RmFailed
exit
古い回答 Ubuntu 14.04では、ライブプレビュー(Chromium)を使用しようとすると、Dart Editorからエラーメッセージが表示されました。libudev1をインストールし、シンボリックリンクを作成することで、エラーを解決しました。
sudo apt-get install libudev1
また、TenLeftFingersが上記のスクリプトを使用してDartEditorを実行しました。
#!/bin/sh
sudo ln -sf /lib/i386-linux-gnu/libudev.so.1 /lib/i386-linux-gnu/libudev.so.0
./DartEditor
sudo rm /lib/i386-linux-gnu/libudev.so.0
Dart Editorが実行されない場合は、JAVAがインストールされていることを確認してください。これは権限の問題ではありません。
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
IDEを実行可能にします:
sudo chmod a+x ./DartEditor
これは私のために働いた。
libudev.so.0およびUbuntuのEmotiv Epoc SDK Dev Editionの修正のためにWebを掘っているときに誰かがこのページに出くわした場合、以下が役立つことを願っています。
//私の設定は64ビットUbuntu 13.04です
sudo ln -sf /lib/x86_64-linux-gnu/libudev.so.1。/lib/x86_64-linux-gnu/libudev.so.1
sudo ln -sf /lib/x86_64-linux-gnu/libudev.so.1 /lib/x86_64-linux-gnu/libudev.so.0
sudo ln -sf /lib/x86_64-linux-gnu/libudev.so.1 /usr/lib/libudev.so.0
sudo ln -sf /lib/i386-linux-gnu/libudev.so.1。/lib/i386-linux-gnu/libudev.so.1
sudo ln -sf /lib/i386-linux-gnu/libudev.so.1 /lib/i386-linux-gnu/libudev.so.0
sudo ln -sf /lib/i386-linux-gnu/libudev.so.1 /usr/lib/libudev.so.0
EmotivControlPanel、EmoKey、EmoComposer、Javaの例、少しカスタマイズされたQtの例は、上記を実行した後に実行できるはずです(上記のすべてのステップとWebで見つかった他のステップ(スタックオーバーフロー、..)私にとっては、それが「試行錯誤」の後のことです
最後になりましたが、ここの誰かが、提供されているサードパーティの32ビットライブラリを使用することを指定しながら、64ビットシステムで32ビットライブラリに対してコンパイルされたプログラムを実行する方法を知っている場合
より正確には、私が話していることを知っている人のために、64ビットシステムで「EmoCube」と「BlueAvatar」Qtの例を実行する方法を教えてください。
->私がこれまでに試したことに対して、私が得ることができたほとんどは、「共有ライブラリのロード中のエラー:libedk.so.1:間違ったELFクラス:ELFCLASS64」でした。
i386ディレクトリにあるそのlibへのシンボリックリンクはそれを作らないと思います(まだ試してはいませんが)ので、誰かが答えを持っているなら...読んで楽しみにしています。
すべて乾杯+
ターミナルで次のコマンドを実行します。
cd /lib/x86_64-linux-gnu/
sudo cp libudev.so.0.13.0 libudev.so.1
これは私を助けました