0

コンパイルするために見つけた指示

Visual studio 2013 を使用して、 Festvox 最新(2010 年以降の更新なし)から Festival をコンパイルするための指示を使用して、Speech Tools をコンパイルしようとしました。

nmake /nologo /FVCMakefile > output.txt

slib_doc.cc
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\math.h(423) : error C2988: unrecognizable template declaration/definition
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\math.h(423) : error C2059: syntax error : 'constant'
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\math.h(429) : error C2143: syntax error : missing ';' before '{'
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\math.h(429) : error C2447: '{' : missing function header (old-style formal list?)
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\cmath(96) : error C2039: 'isnan' : is not a member of '`global namespace''
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\cmath(96) : error C2873: 'isnan' : symbol cannot be used in a using-declaration
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\cmath(96) : error C2039: 'isnormal' : is not a member of '`global namespace''
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\cmath(96) : error C2873: 'isnormal' : symbol cannot be used in a using-declaration

Festival をコンパイルしてみる

nmake /nologo /FVCMakefile > output.txt
festival.cc
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\math.h(423) : error C2988: unrecognizable template declaration/definition
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\math.h(423) : error C2059: syntax error : 'constant'
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\math.h(429) : error C2143: syntax error : missing ';' before '{'
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\math.h(429) : error C2447: '{' : missing function header (old-style formal list?)
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\cmath(96) : error C2039: 'isnan' : is not a member of '`global namespace''
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\cmath(96) : error C2873: 'isnan' : symbol cannot be used in a using-declaration
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\cmath(96) : error C2039: 'isnormal' : is not a member of '`global namespace''
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\cmath(96) : error C2873: 'isnormal' : symbol cannot be used in a using-declaration

Github で見つけたこのバージョンの音声ツールもコンパイルしてみました。
音声ツールを使用した Github リポジトリ のようなエラーがたくさん発生します

speech-tools\include\EST_String.h(156) : error C2061: syntax error : identifier 'ssize_t'

これは speech-tools\include\EST_system.h で処理されるはずだと思います

#   if defined(_MSC_VER)
#       include <BaseTsd.h>
        typedef SSIZE_T ssize_t;
#   endif

おそらく後で問題になる size_t に置き換えることで、ssize_t の問題を回避できました。

上記と同様のエラーで終了します。

nmake /nologo /FVCMakefile > output.txt
slib_format.cc

C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\math.h(423) : error C2988:     unrecognizable template declaration/definition
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\math.h(423) : error C2059: syntax error : 'constant'
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\math.h(429) : error C2143: syntax error : missing ';' before '{'
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\math.h(429) : error C2447: '{' : missing function header (old-style formal list?)
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\cmath(96) : error C2039: 'isnan' : is not a member of '`global namespace''
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\cmath(96) : error C2873: 'isnan' : symbol cannot be used in a using-declaration
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\cmath(96) : error C2039: 'isnormal' : is not a member of '`global namespace''
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\cmath(96) : error C2873: 'isnormal' : symbol cannot be used in a using-declaration

(これをすべて書いているときに、これをコンパイルしようとするすべての試みが math.h と cmath.h で同様の問題に遭遇するように見えますが、別の場所から発生しているように見えます)

4

2 に答える 2

0

指示に示されている手順に従っていないため、機能しません。

指示には、cygwin を使用して GNU make のコピーを取得するか、VS2005 を使用することが明確に記載されています。2006年(およびそれ以降)は機能しないと言っています....

cygwin ルートに従ってコンパイルしないのはなぜですか?

于 2014-12-26T11:09:39.350 に答える