Hello, I'm trying to do adapt the model hub4wsj_sc_8k following the tutorial.
I'm using stable sphinxbase and sphinxtrain 0.7 on win 7 64.
sphinx_fe.exe runs successfully creating the mfc files, but then bw.exe
crashes with a windows error. The last line written in the console before the
crash is:
INFO:model_def_io.c(594):4minstate/model
there are no ERROR lines.
With debug I found that the error happens in the fread function while bw is
trying to read the mixture_weights file. The file is placed correctly and I
checked the arguments passed to bw, too.
Thank you for any help.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
It's interesting, looks like a bug. There are two versions of fread_retry one
in sphinxbase and one in sphinxtrain and it looks that the wrong one was used.
It might cause issues in 64-bit system. Are you running 64-bit?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I have no means to reproduce it since no 64bit windows here. It works in
32-bit. Maybe you can debug this case, put a breakpoint before this function
and check why it crashes, for example on what stage the file pointer is
corrupted.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
It seems that the problem was that SphinxTrain projects was configured to use
Multi-threaded runtime library, while sphinxbase uses Multi-threaded DLL
runtime library, so I set all SphinxTrain projects also to MT DLL and they
don't crash anymore.
However to have mllr_solve working I had also to change the argument "strict"
from TRUE to FALSE in the call to cmd_ln_parse (mllr_solve/parse_cmd_ln.c,
line 43), otherwise it fails when it checks the command line and doesn't do
anything (I hope this is the right way to make it work).
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
It seems that the problem was that SphinxTrain projects was configured to use
Multi-threaded runtime library, while sphinxbase uses Multi-threaded DLL
runtime library, so I set all SphinxTrain projects also to MT DLL and they
don't crash anymore.
This is a nice catch, thank you. The fix is committed in trunk
However to have mllr_solve working I had also to change the argument
"strict" from TRUE to FALSE in the call to cmd_ln_parse
(mllr_solve/parse_cmd_ln.c, line 43), otherwise it fails when it checks the
command line and doesn't do anything (I hope this is the right way to make it
work).
Can you elaborate on that, what exactly was the complain before the change?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello, I'm trying to do adapt the model hub4wsj_sc_8k following the tutorial.
I'm using stable sphinxbase and sphinxtrain 0.7 on win 7 64.
sphinx_fe.exe runs successfully creating the mfc files, but then bw.exe
crashes with a windows error. The last line written in the console before the
crash is:
there are no ERROR lines.
With debug I found that the error happens in the fread function while bw is
trying to read the mixture_weights file. The file is placed correctly and I
checked the arguments passed to bw, too.
Thank you for any help.
When you report about crash please provide the stack trace
Try snapshot, most likely this issue was already fixed
Thanks for the reply.
I tried the snapshot, but it is the same as before.
This is the stack trace:
Hello
It's interesting, looks like a bug. There are two versions of fread_retry one
in sphinxbase and one in sphinxtrain and it looks that the wrong one was used.
It might cause issues in 64-bit system. Are you running 64-bit?
Yes, windows 7 64.
This bug should be fixed in trunk, please update and try again.
I updated, but it's still the same, same error, same stack trace.
Does it work for you now? Maybe I'm doing something wrong.
I have no means to reproduce it since no 64bit windows here. It works in
32-bit. Maybe you can debug this case, put a breakpoint before this function
and check why it crashes, for example on what stage the file pointer is
corrupted.
It seems that the problem was that SphinxTrain projects was configured to use
Multi-threaded runtime library, while sphinxbase uses Multi-threaded DLL
runtime library, so I set all SphinxTrain projects also to MT DLL and they
don't crash anymore.
However to have mllr_solve working I had also to change the argument "strict"
from TRUE to FALSE in the call to cmd_ln_parse (mllr_solve/parse_cmd_ln.c,
line 43), otherwise it fails when it checks the command line and doesn't do
anything (I hope this is the right way to make it work).
It seems that the problem was that SphinxTrain projects was configured to use
Multi-threaded runtime library, while sphinxbase uses Multi-threaded DLL
runtime library, so I set all SphinxTrain projects also to MT DLL and they
don't crash anymore.
This is a nice catch, thank you. The fix is committed in trunk
Can you elaborate on that, what exactly was the complain before the change?
Sorry, my mistake. The original code is ok.
Great, thank you once again.