我找到了一个很棒的图书馆:CFugue。这正是我需要的,但我不能在linux上使用它。他们写道,它适用于ubuntu,但我没有成功:
g ++说“vfw.h”不存在。据我所知,它代表“Windows视频”。 是否可以在linux上使用CFugue?
答案 0 :(得分:0)
(我假设您正在尝试使用CMake构建库,对吗?)
标题附带Wine。具体来说,Wine的开发包。在大多数Linux发行版中,它通常被称为“wine-dev”或“wine-devel”。
请注意,CFugue是用C ++ 11编写的,因此您需要一个最新的GCC版本。 4.7应该可以工作,4.6可能有用,但4.5很可能不起作用。
答案 1 :(得分:0)
根据sourceforge的评论
+IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux") # Linux specific code
+ SET(CFugue_Dependencies asound)
+ENDIF(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
它应该支持linux build。
尝试
cmake< cfugue checkout的路径>
请
然后根据结果重述您的问题。
答案 2 :(得分:0)
我不知道这是否会对你有所帮助,因为我仍然无法在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的声音驱动程序很麻烦。