我正在尝试在 Debian-linux 机器上构建 hCsound-0.4.2,似乎自 2012 年(最新版本)以来 csound.h 文件发生了一些变化,但我不确定。
尝试时cabal install hcsound
我得到关注
Configuring hCsound-0.4.2...
cabal: Missing dependency on a foreign library:
* Missing (or bad) header file: csound.h
我有版本 1:6.02~dfsg-2 的 libcsound64-dev,它安装csound.h
到/usr/include/csound/
.,所以我做了以下操作:
cabal unpack hcsound
cd hCsound-0.4.2
cabal configure --extra-include-dirs=/usr/include/csound
cabal build
在这种情况下,配置做得很好,但我在构建阶段遇到错误:
Preprocessing library hCsound-0.4.2...
c2hs: Error limit of 20 errors has been reached.
src/Sound/Csound/Foreign.chs:1224: (column 14) [ERROR] >>> Unknown identifier!
Cannot find a definition for `csoundSetControlChannelParams' in the header file.
src/Sound/Csound/Foreign.chs:1118: (column 11) [ERROR] >>> Unknown identifier!
Cannot find a definition for `CsoundChannelListEntry' in the header file.
src/Sound/Csound/Foreign.chs:1113: (column 22) [ERROR] >>> Unknown identifier!
Cannot find a definition for `CsoundChannelListEntry' in the header file.
src/Sound/Csound/Foreign.chs:1111: (column 23) [ERROR] >>> Unknown identifier!
Cannot find a definition for `CsoundChannelListEntry' in the header file.
...
一些提到的函数名称存在于 中/usr/include/csound/csound.h
,有些则没有。c2hs 是否有可能处理错误的标头?
可以做些什么来找出不正确(?)行为的可能原因?有人最近有构建 hCsound 的经验吗?
我的意图是使用该库从 Haskell 程序中产生声音输出,所以如果有人提出更好的解决方案,那也很棒。我已经安装 haskore-supercollider 失败,我有 haskore 包,但没有设法获得它是否可以实时产生声音。