pocketsphinx-ios-demo icon indicating copy to clipboard operation
pocketsphinx-ios-demo copied to clipboard

Autogen can't find SphinxBase (sphinx_config.h), while its really there

Open Toine-db opened this issue 4 years ago • 3 comments

I have seen lots and lots of issues about missing 'sphinx_config.h', most of them because of wrong folder names like 'sphinxbase-master'. But my folder structure is exactly how its supposed to be, and it really includes 'sphinx_config.h' as well, so what could it be?

I downloaded the two repos and put them in the folders:

  • sphinxbase
  • pocketsphinx

I run "./autogen.sh" in sphinxbase and it works fine I run "./autogen.sh" in pocketsphinx and I get the error that it can't find sphinxbase

checking SWIG version... 4.0.2 checking for SWIG library... /usr/local/Cellar/swig/4.0.2/share/swig/4.0.2 checking for GStreamer... checking for sphinxbase in /Users/toinedeboer/pocketsphinx/../sphinxbase... no checking for sphinxbase in /Users/toinedeboer/pocketsphinx/../sphinxbase... no ./configure: line 13321: SPHINXBASE_CFLAGS: command not found ./configure: line 13322: SPHINXBASE_LIBS: command not found checking sphinx_config.h usability... no checking sphinx_config.h presence... no checking for sphinx_config.h... no configure: error: in /Users/toinedeboer/pocketsphinx': configure: error: SphinxBase was not found on your system. See config.log' for more details

Some other stuff I tried besides above:

  • runing "./autogen.sh" in pocketsphinx with the following doesn't work either
    • with sphinxbase include folder on different locations (the folder that has sphinx_config.h)
    • with sphinxbase in pocketsphinx folder
    • building sphinxbase (./build_iphone.sh arm64) and using the /bin folders
    • etc etc.

I added the terminal output and the logs to see what happens in detail. autogen-terminal-output.txt config.log (pocketsphinx) config.log (sphinxbase)

Toine-db avatar Nov 20 '20 14:11 Toine-db

Hello

You can try to change this line:

https://github.com/cmusphinx/pocketsphinx/blob/ab6d6471800966990e12fdb6ed27ae36323cf2c4/configure.ac#L103

to something like (.la to .a)

   if test -f "$sb/src/libsphinxbase/libsphinxbase.a"; then

depending on what file is actually there.

nshmyrev avatar Dec 04 '20 14:12 nshmyrev

Great, thnks

Toine-db avatar Dec 04 '20 15:12 Toine-db

I fixed it, it seems building Spinxbase creates files and puts them in architecture folders and not in "spinxbase/src/libsphinxbase/file.a" but in something like "spinxbase/bin/arm64/lib/file.a".

Copy/pasting these file to spinxbase/src/libsphinxbase/ made it all work again.

Toine-db avatar Dec 11 '20 13:12 Toine-db