CFugueという素晴らしいライブラリを見つけました。それはまさに私が必要としているものですが、Linux では使用できません。彼らはそれがubuntuで動作すると書いていますが、私は成功しませんでした:
g++ は「vfw.h」が存在しないと言っていました。私が理解している限り、それは「windowsのビデオ」の略です。LinuxでCFugueを使用することは可能ですか?
(CMakeを使用してライブラリを構築しようとしていると思いますよね?)
そのヘッダーにはWineが付属しています。具体的には、Wineの開発パッケージです。これは通常、ほとんどのLinuxディストリビューションでは「wine-dev」または「wine-devel」と呼ばれます。
CFugueはC++11で記述されているため、最新のGCCバージョンが必要になることに注意してください。4.7は機能するはずですが、4.6は機能する可能性がありますが、4.5はおそらく機能しません。
sourceforgeからのコメントによると
+IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux") # Linux specific code
+ SET(CFugue_Dependencies asound)
+ENDIF(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
Linuxビルドをサポートする必要があります。
試す
cmake<cfugueチェックアウトへのパス>
作る
次に、結果に応じて質問を言い直します。
Linuxでもcfugueを実行できていないため、これが役立つかどうかはわかりません。私は開発者に電子メールを送り、その方法を尋ねました。彼は次の手順を送信しました。
「Linking CXX executable ../Bin/StaticLibTestAppdu」という行が表示されます。
コマンド「../Bin/StaticLibTestAppdu」を入力すると、実行されるはずです。
しかし、それでも私にはうまくいきませんでした。これらは make からの出力の最後の数行です。ALSA に問題があることを意味していると思いますが、私は専門家ではありません。
/home/tom/Workspace/cfuge/CFugue_src_22Jan12/MusicNote/src/MusicNoteLib/MIDIDrivers/AlsaDriver.cpp:167:29: note: mismatched types ‘const std::fpos<_StateT>’ and ‘std::future_status’
make[2]: *** [CMakeFiles/MusicNoteLib.dir/src/MusicNoteLib/MIDIDrivers/AlsaDriver.cpp.o] Error 1
make[1]: *** [CMakeFiles/MusicNoteLib.dir/all] Error 2
make: *** [all] Error 2
ALSA が問題であっても驚かないでしょう。FreeTTS を Linux の Java で実行しようとしたのを覚えていますが、ALSA ドライバーが悪かったためうまくいきませんでした。2008 年に初めてラップトップに ubuntu をインストールしましたが、サウンドがまったく機能しませんでした。pulseaudio をデフォルトにしたため、新しいバージョンは機能します。しかし、Linux 用のサウンド ドライバはまだ面倒なようです。