Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update CMUSphinx to last version #28

Closed
BrunoBerisso opened this issue Sep 20, 2016 · 9 comments
Closed

Update CMUSphinx to last version #28

BrunoBerisso opened this issue Sep 20, 2016 · 9 comments

Comments

@BrunoBerisso
Copy link
Contributor

The CMUSphinx engine used by TLSphinx is out of date. A new version is available here: http://cmusphinx.sourceforge.net/wiki/download

We need to:

  • get a brief of the changes
  • update the version used here
  • take the chance to polish the engine update process (add scripts to generate the lib from the source to the repo)
@mainvolume-hq
Copy link

+1

1 similar comment
@vhinic
Copy link

vhinic commented Sep 20, 2016

+1

@mainvolume-hq
Copy link

is there any way to clean debugger log while running?

@cgamache
Copy link

For the current version, what are TLSphinx/Sphinx/lib/pocketsphinx/libpocketsphinx.a, TLSphinx/Sphinx/lib/sphinxbase/libsphinxad.a , and TLSphinx/Sphinx/lib/sphinxbase/libsphinxbase.a and how do they differ from the platform-specific versions?

@BrunoBerisso
Copy link
Contributor Author

@cgamache They are fat binaries, they contains the compiled versions for: armv7, armv7s, i386, x86_64 and arm64. Try lipo -info with that files.

@ss-pq what are you running?

@cgamache
Copy link

Thanks. That explains my linking issues. I'm trying to work out what to replace library-wise for 5prealpha. Candidly speaking, this is my first dive into integrating a new C library into an XCode project. Heretofore, I've used others' fine work and haven't ever had to think about it.

I suppose this issue as as good a place as any to have a discussion... I can't see where the platform-specific binaries are being referenced by the Sphinx module or the main project. Are they ever put in play or are they there in case someone wants to explicitly co-opt a single platform's library? Is there some sort of convention that the linker uses to pick a library to link against that I'm unaware of?

This was referenced Sep 29, 2016
@cgamache
Copy link

cgamache commented Oct 2, 2016

A quick observation:

The desire to create an automated library build system for smooth updates is a good one, but a bit ambitious at this point. I had to manually tweak the Sphinx 5prealpha to get it to build under XCode8 which is less than ideal for creating an automated fetch-and-build system for this library.

Maybe next go-around?

@BrunoBerisso asked for a PR against master without Swift-3.0. Happy to oblige!

@BrunoBerisso
Copy link
Contributor Author

Hey @cgamache!

Thank you very much for this 😄 I will try your PR and merge it as soon as I get to my machine.

About the engine update process I wasn't clear in my description. What I meant was upload the build script used to generate the fat binaries and maybe add some documentation to ghe README that explains a little how to procede so it's more clear how TLSphinx work.

I totally agree with you that make it full automatic isn't posible at this point.

Do you use this script to build the binaries?

Thanks!

@BrunoBerisso
Copy link
Contributor Author

PR #30 is merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants