私は Ubuntu 14.04.64 ビットを使用しており、linuxband をインストールしようとしています。そのためには libjack-dev パッケージをインストールする必要がありますが、そうすると次のメッセージが表示されます。
Some packages could not be installed. This may mean that you have requested an
impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
libjack-dev : Depends: libjack0 (= 1:0.121.3+20120418git75e3e20b-2.1ubuntu1) but it is
not going to be installed
E: Unable to correct problems, you have held broken packages.
ポイントは、たとえば他の libjack-jackd2 はインストールされているのですが、linuxband の ./configure を実行すると次のようになるということです。
checking for JACK_MIDI_NEEDS_NFRAMES... no
これはリストの中で唯一の「いいえ」です。makeを実行すると、大量の未定義の参照が生成されます(例:
src/main/c/linuxband-player.c: In function ‘main’:
src/main/c/linuxband-player.c:768:2: warning: ‘g_thread_init’ is deprecated (declared at
/usr/include/glib-2.0/glib/deprecated/gthread.h:261) [-Wdeprecated-declarations]
g_thread_init(NULL);
^
またはそれ以降
linuxband-player.c:(.text+0x50b): undefined reference to `jack_transport_query'
linuxband-player.c:(.text+0x586): undefined reference to `jack_transport_query'
linuxband-player.c:(.text+0x5a1): undefined reference to `jack_last_frame_time'
linuxband-player.c:(.text+0x615): undefined reference to `jack_last_frame_time'
linuxband-player.c:(.text+0x672): undefined reference to `smf_peek_next_event'
linuxband-player.c:(.text+0x6b5): undefined reference to `smf_event_is_metadata
等々)
次のように終わるまで:
/tmp/ccrh0o5V.o:remote_control.c:(.text+0xf01): more undefined references to `g_log' follow
collect2: error: ld returned 1 exit status
make: *** [target/linuxband-player] Error 1
誰か助けてくれませんか?
答え1
私も同じようなケースを経験しましたlibjack0
。自動的にインストールskype:i386
に失敗しました (Skype には Linux 用の 64 ビット バージョンがないため)。
私にとっての解決策は、単純にそれを強制することでした。
sudo apt-get install libjack0
その後、インストールの確認を求められましたがlibjack0
、アンインストールいくつかの他の競合するプログラム(私の場合は Skype を含む)を削除しました。その後、libjack-dev
スムーズにインストールされました(私にとっては、Audacity をビルドするための要件でした)。