Tôi đang cố gắng để có một bản demo làm việc viết PCM lên I 2 S; Tôi đã tạo một chương trình demo nhỏ gây ra lỗi khi tôi chạy bằng lệnh sau./demo stereo_small.wav
can't open /dev/mem
Vì vậy, tôi chạy với lệnh này sudo ./demo stereo_small.wav
(đã thêm sudo
) và bản demo bây giờ có thể chạy thành công với các đặc quyền nâng cao.
Nhưng bây giờ tôi gặp lỗi này:
./demo: error while loading shared libraries: libsndfile.so.1: cannot open shared object file: No such file or directory
Ban đầu, để chương trình hoạt động, tôi phải thực thi lệnh này export LD_LIBRARY_PATH=/usr/local/lib
chỉ để nó hoạt động, và bây giờ lỗi đã quay trở lại, nhưng chỉ khi tôi tiền tố lệnh vớisudo
Xin hãy trần trụi với tôi Tôi chỉ mới sử dụng C & Linux trong vài giờ!
Đây là những gì tôi đã làm để biên dịch và chạy:
gcc `pkg-config --cflags sndfile` -c demo.c
gcc 'pkg-config --libs sndfile' demo.o -o demo
sudo ./demo stereo_small.wav
Cập nhật - Nguyên nhân: một số biến môi trường không được duy trì trong bối cảnh SU xem tại đây
libsndfile
là nơi bạn nghĩ rằng nó là? Kiểm tra thư mục đó. Ngoài ra kiểm tra đầu ra của echo $LD_LIBRARY_PATH
trận đấu nó.
/dev/mem
?
linux
thẻ có lẽ là không cần thiết. Sẽ tốt hơn nếu bạn cung cấp bản phân phối của mình thay vào đó (có thể là Debian).