Đang cố gắng chạy Game Dev Tycoon trên Ubuntu 64. Nó yêu cầu đối tượng trên.
Tôi chạy sudo apt-get install libudev1:i386
và nó đã trở lại đã được cài đặt.
Tôi có /lib/i386-linux-gnu/libudev.so.1
nhưng không có libudev.so.0
nơi nào.
Đang cố gắng chạy Game Dev Tycoon trên Ubuntu 64. Nó yêu cầu đối tượng trên.
Tôi chạy sudo apt-get install libudev1:i386
và nó đã trở lại đã được cài đặt.
Tôi có /lib/i386-linux-gnu/libudev.so.1
nhưng không có libudev.so.0
nơi nào.
Câu trả lời:
Đối với Ubuntu 64 bit, nó nằm trong gói libudev0 32 bit.
Bạn có thể cài đặt bằng lệnh sau:
sudo apt-get install libudev0:i386
Gói này đã bị xóa khỏi Ubuntu vào ngày 14.04. Bạn sẽ cần phải cài đặt nó từ một phiên bản cũ hơn.
Để khắc phục, tôi liên kết libudev.so.1
với 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
Phương pháp đơn giản nhất tôi tìm thấy là chỉ cần tải xuống .deb ( liên kết trực tiếp đến tải xuống 64 bit và tải xuống 32 bit ) và nhấp đúp vào nó để cài đặt hoặc sử dụng dpkg để cài đặt:
dpkg -i libudev0_175-0ubuntu9_amd64.deb
Trong phiên bản trước của Ubuntu, gói này đã có sẵn trong kho chính thức. Bạn có thể cài đặt với các mục sau:
sudo apt-get install libudev0:i386
Tôi có cùng một vấn đề đối với một chương trình khác, nhưng câu trả lời được chấp nhận của Sean không giúp tôi chút nào. Trong bản cài đặt nâng cấp 64-bit 13.04 của tôi, libudev0 không khả dụng ở dạng 64-bit hoặc dạng i386. Và ia32-libs đã được cài đặt. Vì vậy, không có xúc xắc.
Những gì tôi phải làm là một phiên bản sửa đổi một chút giải pháp kỹ thuật hơn của Senshikaze. Tôi đã liên kết thủ công libudev.so.0 với libudev.so.1 trong thư mục lib x86_64, do đó:
cd /lib/x86_64-linux-gnu/
sudo ln -sf libudev.so.1 libudev.so.0
CÁi này đã sửa nó giúp tôi.
Lỗi này có thể xảy ra khi cố gắng sử dụng nw thực thi từ Node Webkit . Như thế này:
./nw: error while loading shared libraries: libudev.so.0: cannot open shared object file: No such file or directory
Nhận trình soạn thảo hex cho phép bạn thay đổi chuỗi nhị phân ASCII, vd. hexedit :
sudo apt-get install hexedit
.cd ~/Dokumenty/node-webkit-*
.sudo
:
sudo hexedit nw
.libudev.so.0
dưới dạng chuỗi ASCII:
libudev.so.0
.0
trong libudev.so.0
chuỗi thành 1
, để nó trở thành libudev.so.1
::
0
trong libudev.so.0
chuỗi.Bạn đã hoàn tất. Điều này cũng khắc phục sự cố với nhị phân Atraci khi làm theo các hướng dẫn tương tự ngoại trừ chỉnh sửa hex tệp Atraci thay vì nw.
cat nw | sed s/libudev.so.0/libudev.so.1/ > fixed_nw
, chmod a+x fixed_nw
Và sau đó bạn có thể chạy nó, không cần phải cài đặt bất cứ điều gì
Câu trả lời duy nhất ở đây hoạt động trên Ubuntu 14.04 là câu trả lời được chấp nhận và vì nhiều ý kiến chỉ ra rằng điều này có thể gây ra sự cố với hệ thống (mặc dù tôi không biết về điều đó) nên tôi đã đưa ra một thỏa hiệp. Kịch bản này sẽ nhắc (trong thiết bị đầu cuối) cho mật khẩu gốc của bạn. Nó sẽ tạo liên kết tượng trưng và khởi chạy ứng dụng (trong trường hợp của tôi, thời gian bỏng ngô). Khi bạn thoát khỏi ứng dụng, nó sẽ sử dụng phiên sudo hiện có để xóa liên kết tượng trưng:
#!/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
Tôi chỉ tìm thấy một cách để làm cho công việc này, mặc dù là khá ngớ ngẩn.
Tôi đã cài đặt Google Chrome trên hệ thống của mình và Chrome đã nhúng đối tượng chia sẻ này. Vì vậy, tôi chỉ cần tạo một liên kết tượng trưng đến thư viện trên thư mục cài đặt Chrome.
ln -sf /opt/google/chrome/libudev.so.0 /lib/x86_64-linux-gnu/libudev.so.0
Nó hoạt động khá tốt đối với tôi.
Đây là giải pháp đơn giản nhất tôi tìm thấy
sudo ln -s /lib/x86_64-linux-gnu/libudev.so.1 /lib/x86_64-linux-gnu/libudev.so.0
như Phil Strong đã chỉ ra
Tải về libudev.so.1
sudo apt-get install libudev1:i386
sau đó liên kết nó như libudev.so.0
sudo ln -sf /lib/x86_64-linux-gnu/libudev.so.1 /lib/x86_64-linux-gnu/libudev.so.0
tôi đã làm điều này vào ngày 14.04, nhưng sẽ tương tự. chỉ cần xóa gói và cài đặt lại. các thư viện chính xác được cài đặt thích hợp.
apt-get purge google-chrome-stable
apt-get install google-chrome-stable
Tôi chắc chắn các câu trả lời khác hoạt động, nhưng tôi có một cơ sở trong việc sửa đổi các đối tượng hệ thống tệp được quản lý bởi các gói quản lý cấu hình.
Đây là những gì tôi đã sử dụng để giải quyết vấn đề tương tự trên Ubuntu 15.04 32 bit.
cd i386-linux-gnu
sudo ln -sf libudev.so.1 libudev.so.0
CẬP NHẬT Tôi đã tạo một tập lệnh bash để bao quanh chương trình bạn muốn thực thi. Bạn có thể thêm nó vào thư mục bin cục bộ của bạn và chỉ cần khởi động chương trình mà không cần sao chép & dán hoặc chạy các kịch bản shell.
#!/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
TRẢ LỜI OLD Trong Ubuntu 14.04 Tôi đã nhận được thông báo lỗi từ Trình chỉnh sửa phi tiêu khi thử sử dụng Live Preview (Chromium). Lỗi đã được khắc phục bằng cách cài đặt libudev1 và tạo một liên kết tượng trưng .
sudo apt-get install libudev1
Tôi cũng đã sử dụng tập lệnh được đề cập ở trên bởi TenLeftFingers để thực thi 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
Nếu Trình chỉnh sửa phi tiêu không thực thi, hãy đảm bảo JAVA đã được cài đặt và đó không phải là vấn đề cấp phép.
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
và làm cho IDE có thể thực thi được:
sudo chmod a+x ./DartEditor
Điều này làm việc cho tôi.
Tôi đã gặp lỗi tương tự trên hệ thống 32 bit của mình sau khi nâng cấp từ Xubfox Precise lên Trusty. CÁi này đã sửa nó giúp tôi:
sudo dpkg-reconfigure google-chrome-stable
Tôi tìm thấy nó ở đây . Hoàn toàn không có tham số, tôi không chắc chắn cách này đã sửa nó, nhưng nó đã làm. Điều tôi thích nhất là nó không yêu cầu làm bất cứ điều gì có thể gây ra vấn đề cho tôi trong tương lai và không yêu cầu tôi săn lùng bất kỳ gói hàng nào.
Nếu bất kỳ ai vấp phải trang này trong khi đào web để sửa lỗi trên libudev.so.0 & Emotiv Epoc SDK Dev Edition trên Ubuntu, tôi hy vọng những điều sau sẽ giúp:
// cấu hình của tôi là 64 bit 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, các ví dụ Java và các ví dụ Qt tùy chỉnh nhỏ sẽ có thể chạy sau khi thực hiện các thao tác trên (tôi đã thử tất cả các bước trên + các bước khác được tìm thấy trên web (stack overflow, ..), nhưng không có gì hoạt động đối với tôi, đó là những gì tôi đã làm sau khi "thử & lỗi"
Cuối cùng nhưng không kém phần quan trọng, Nếu có ai ở đây biết cách chạy các chương trình được biên dịch dựa trên libs 32 bit trên hệ thống 64 bit TẠI SAO ĐẶC BIỆT ĐỂ SỬ DỤNG THƯ VIỆN 32RIT BÊN 3RD ĐƯỢC CUNG CẤP?
chính xác hơn, đối với những người biết tôi đang nói về điều gì, tôi phải chạy các ví dụ Qt "EmoCube" và "BlueAvatar" trên hệ thống 64 bit của mình như thế nào?
-> cho những gì tôi đã thử cho đến nay, điều tôi có thể nhận được nhiều nhất là: "lỗi trong khi tải thư viện dùng chung: libedk.so.1: lớp ELF sai: ELFCLASS64"
Tôi đoán rằng một liên kết tượng trưng đến lib đó trong thư mục i386 sẽ không tạo ra nó (mặc dù tôi chưa thử nó), vì vậy nếu có ai có câu trả lời ... Tôi mong được đọc nó.
Chúc mừng tất cả +
Chạy các lệnh này trong một thiết bị đầu cuối:
cd /lib/x86_64-linux-gnu/
sudo cp libudev.so.0.13.0 libudev.so.1
Điều này đã giúp tôi