sclite(SCTK)安装,无法识别文件,无法识别文件格式,Cygwin

问题描述 投票:0回答:3

我目前正在尝试安装NIST的sclite,它是SCTK 2.4.0(githubcurrent version)的一部分。我正在尝试在Cygwin中的bash上安装。使用make完成安装。


我做了什么

我为安装创建了一个目录,并导航到该目录

mkdir sctk2.4.0
cd sctk2.4.0

(您可能需要$ cd /path/to/dir/sctk2.4.0。]

我从github克隆了项目

git clone https://github.com/chinshr/sctk.git

导航到基本文件夹

cd sctk

然后我开始按照INSTALL文件中的说明进行操作。

正在运行

INSTALL

工作正常,但是输入后

make config

我得到以下输出

make all

我看过(mkdir -p bin) (cd src; make all) make[1]: Entering directory '/cygdrive/c/David/programs/sctk2.4.0/sctk/src' (cd asclite; make all) make[2]: Entering directory '/cygdrive/c/David/programs/sctk2.4.0/sctk/src/asclite' (cd core; make all) make[3]: Entering directory '/cygdrive/c/David/programs/sctk2.4.0/sctk/src/asclite/core' g++ -o asclite -g -Os alignment.o segment.o sgml_reportgenerator.o alignedsegmentiterator.o reportgenerator.o speechset.o segmentsgroup.o logger.o tokenalignment.o sgml_generic_reportgenerator.o recording.o statistics.o compressedlevenshteinmatrix.o segmentor.o id.o trntrn_segmentor.o linestyle_inputparser.o inputparser.o levenshteinmatrix.o levenshtein.o uemfilter.o speakermatch.o spkrautooverlap.o graphalignedsegment.o rawsys_reportgenerator.o graphalignedtoken.o timedobject.o stt_scorer.o aligner.o arraylevenshteinmatrix.o graph.o main.o trn_inputparser.o alignedspeech.o token.o alignedsegment.o graph_coordinate.o rttm_inputparser.o scorer.o properties.o ctmstmrttm_segmentor.o filter.o speech.o alignedspeechiterator.o stm_inputparser.o checker.o ctm_inputparser.o lzma/LzFind.o lzma/LzmaEnc.o lzma/Alloc.o lzma/LzmaLib.o lzma/LzmaDec.o -lm alignment.o: file not recognized: File format not recognized collect2: error: ld returned 1 exit status make[3]: *** [makefile:62: asclite] Error 1 make[3]: Leaving directory '/cygdrive/c/David/programs/sctk2.4.0/sctk/src/asclite/core' make[2]: *** [makefile:12: all] Error 2 make[2]: Leaving directory '/cygdrive/c/David/programs/sctk2.4.0/sctk/src/asclite' make[2]: *** [makefile:12: all] Error 2 make[2]: Leaving directory '/cygdrive/c/David/programs/sctk2.4.0/sctk/src' make: *** [makefile:20: all] Error 2 ,但我确定this SO post文件未损坏。以防万一,我尝试了一些alignment.o,甚至从make clean重新克隆了该项目,但仍然遇到相同的错误。

任何人都可以帮助我完成此安装,或者至少要进行下一步吗?


系统详细信息

github

我问这个问题,然后回答我自己的问题。 (我希望StackOverflow允许我们这样做。)希望这将使人们可以更轻松地帮助我解决在安装过程中遇到的更多问题。

我遇到的下一个问题已讨论$ uname -a CYGWIN_NT-6.1 MyMachine 2.10.0(0.325/5/3) 2018-02-02 15:16 x86_64 Cygwin $ bash --version GNU bash, version 4.4.12(3)-release (x86_64-unknown-cygwin) ... $ gcc --version gcc (GCC) 6.4.0 ... $ g++ --version g++ (GCC) 6.4.0 ... $ make --version GNU Make 4.2.1 Built for x86_64-unknown-cygwin ... $ systeminfo | sed -n 's/^OS\ *//p' Name: Microsoft Windows 7 Enterprise Version: 6.1.7601 Service Pack 1 Build 7601 Manufacturer: Microsoft Corporation Configuration: Member Workstation Build Type: Multiprocessor Free 。您可以在此问题的答案中看到下一个问题。

c++ c makefile cygwin
3个回答
0
投票

((有关here解决方案,请参阅我在问题下方的评论。)

解决问题的方法通常是在kaldi中。 注意:解决此问题后出现了另一个问题。请参阅此答案的底部以寻求帮助。

这是我用来从README获取相关信息的命令。

README

这是相关信息

README

因此,我转到列出的cat README | tail -13 64 bits Compilation With big alignments, sctk needs to be compiled in 64 bits. By default, the C/C++ software are compiled in 32 bits with the options (-Os) but can be compiled in 64 bits, -m64 is added to the CFLAGS variable in: src/asclite/core/makefile src/asclite/test/makefile src/rfilter1/makefile src/sclite/makefile Example of CFLAGS: For OSX 10.4+: -fast -m64 -arch x86_64 -arch ppc64 除外,请参见下文)并在那里更改代码,将每个makefile替换为rfilter1。仅对列出的makefile执行此操作。我将列举其中一个文件的示例,但请注意,您必须为其他文件执行此操作。

-Os

打开文件时,我找到了以下行:

-m64

我改为]

cd sctk
vim src/asclite/core/makefile

((按“ CFLAGS = -g -Os ”进入CFLAGS = -g -m64 模式,进行更改,按“ i”,然后按“ INSERT”(写和退出),然后按“ Esc”)

我对所有列出的文件(:wq除外)进行了更改,因为该文件中没有Enter。这最终变得很重要,因为如果我完全更改了此文件,安装将无法进行。

完成此操作后,我运行了src/rfilter1/makefile,但我没有运行-Os,因为这将撤消我们刚刚进行的更改。我直接去了:

make clean

这使我们过去了。

This

问题已解决,但还有另一个问题:
make config

我问了make all


0
投票

这是'EASIER'解决方案。


0
投票

更简单的解决方案

© www.soinside.com 2019 - 2024. All rights reserved.