Closed barrettcw closed 3 years ago
OK - my mistake - it doesn't crash, but it produces a long list of backtraces Possibly a MacOS issue?
The backtrace is
File "/Library/Python/3.8/site-packages/ddsmt/strategy_hierarchical.py", line 182, in check
res = checker.check_exprs(exprs)
File "/Library/Python/3.8/site-packages/ddsmt/checker.py", line 139, in check_exprs
tmpfile = tmpfiles.get_tmp_filename()
File "/Library/Python/3.8/site-packages/ddsmt/tmpfiles.py", line 64, in get_tmp_filename
__TMPDIR.name,
but apparently no actual error is printed.
This was fixed by https://github.com/ddsmt/ddSMT/commit/9a04abb753df1859b053ebdbfe5cf2efc42e62d9
I just uploaded a new release to pypi, which includes this fix. @barrettcw can you try with version 2.0.2?
This MacOS fix does not work for me. It doesn't look like it's included when one installs via
pip install ddsmt
I'm using python 3.9 on MacOS 11.5. The ddsmt
shell script created by pip install
is not the same as the bin/bbsmt
in the repo.
Also, the python doc https://docs.python.org/3/library/multiprocessing.html?highlight=spawn seems to indicate that 'fork` is not safe on recent MacOS.
@BrunoDutertre Thanks for bringing this up. You're right the bin/ddsmt
script is not the one that is used when installing with pip. pip generates its own script and calls the entrypoint of ddsmt from __main__.py
. Another issue is fork
on macOS, I didn't know about this issue. We'll have to find a fix for that. In the meanwhile can you checkout the ddsmt repo and use the bin/ddsmt
instead?
@mpreiner, Thanks. I've been using the repo version. It seems to be working fine so far.
The attached file crashes when run with ddsmt t.smt2 out.smt2 cvc5
t.smt2.txt