使ってみようオークション私のオーディオファイルの真偽を確認してください。 libstdc++-libc6.2-2.so.3 を追加した後、Synology NAS (DS918+) で Linux バイナリを正常に実行できます。 MacBook Proノートブックでこれをすばやく実行したいです。 Debian GNU Linux 9(Parallels Desktop)で同じ手順を繰り返して、次のエラーが発生しました。
Fatal error: glibc detected an invalid stdio handle
fish: 'aucdtect' terminated by signal SIGABRT (Abort)
データベース:
(gdb) run
Starting program: /usr/local/bin/aucdtect
Fatal error: glibc detected an invalid stdio handle
Program received signal SIGABRT, Aborted.
0xf7fd7c89 in __kernel_vsyscall ()
(gdb) bt
#0 0xf7fd7c89 in __kernel_vsyscall ()
#1 0xf7d8fdf0 in raise () from /lib32/libc.so.6
#2 0xf7d912b7 in abort () from /lib32/libc.so.6
#3 0xf7dcb3af in ?? () from /lib32/libc.so.6
#4 0xf7dcb3ec in __libc_fatal () from /lib32/libc.so.6
#5 0xf7dcbd73 in ?? () from /lib32/libc.so.6
#6 0xf7da641b in vfprintf () from /lib32/libc.so.6
#7 0xf7dad7c8 in fprintf () from /lib32/libc.so.6
#8 0x080492d4 in ?? ()
#9 0xf7d7c286 in __libc_start_main () from /lib32/libc.so.6
#10 0x080489b1 in ?? ()
(gdb)
#0 0xf7fd7c89 in __kernel_vsyscall ()
#1 0xf7d8fdf0 in raise () from /lib32/libc.so.6
#2 0xf7d912b7 in abort () from /lib32/libc.so.6
#3 0xf7dcb3af in ?? () from /lib32/libc.so.6
#4 0xf7dcb3ec in __libc_fatal () from /lib32/libc.so.6
#5 0xf7dcbd73 in ?? () from /lib32/libc.so.6
#6 0xf7da641b in vfprintf () from /lib32/libc.so.6
#7 0xf7dad7c8 in fprintf () from /lib32/libc.so.6
#8 0x080492d4 in ?? ()
#9 0xf7d7c286 in __libc_start_main () from /lib32/libc.so.6
#10 0x080489b1 in ?? ()
私の考えは、プログラムが古すぎて(2004年)、最新のライブラリと互換性がないためです。問題を引き起こしているライブラリ(おそらくlibc?)をどうやって知ることができますか、どの古いバージョンを入手する必要がありますか?
答え1
私は覚えている限り、長い間ワインの下でauCDtectを使用してきました。
wine ~/bin/auCDtect.exe -v -mS0 '*.wav'
また、考慮することができますhttps://github.com/alexkay/spek波形を視覚的に表示します。オーディオファイルが不良エンコーダによって処理されたことをすぐに確認できます。良いエンコーダ(Apple AAC、256Kbit/secなど)は通常、このように検出することはほとんど不可能ですが、auCDtectはそのエンコーダをCDDAとしてマークします。
どの共有ライブラリを使用しているかを確認するには、それを実行できますldd /path/to/binary
。必要なライブラリのバージョンは教えてくれません。
答え2
私がldd /usr/local/bin/aucdtect
使用したライブラリaucdtect
(主にlibcとlibm)を見つけてNASからコピーし、同じディレクトリに配置してaucdtect
設定したLD_LIBRARY_PATH
ことがあります。この方法を使用して仮想マシンで実行/usr/local/bin
できました。aucdtect
しかし、wine
macOSで使用するのが仮想マシンで使用するよりもほぼ3倍速く(サンプルサイズ=1)、最終的に使用するようになりましたwine
。