-
Notifications
You must be signed in to change notification settings - Fork 27
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
python3.9 error in finding the pyboolector module in constraint model #141
Comments
Did you maybe install pyboolector inside a virtual environment and run outside of it now, or the other way around? |
Hi @EngRaff92, that's strange -- especially because my understanding is that the 'pip install' operations completed without error. Can you confirm this is the case?
I also like @cmarqu's suggestion to double-check where pyboolector was installed (which Python install). Might be worth creating a dedicated virtual environment for the diagnostic steps above. |
I did the uninstall and I ran again the PyVSC installer. Before doing it I fired the pip install PyBoolector command and it seems like is running across many versions until it finds the correct one (not sure on what the correctness is based on) WARNING: Discarding https://files.pythonhosted.org/packages/b7/25/f3e324d177293245ebe8ea4eaec6cb3e352ddb8f09623906898b663aa437/PyBoolector-3.2.1.20200906.14.tar.gz#sha256=99b21d02e7d5944ab686f8fb8304ea71ed4a8651681af64be4ab9bad9aaa0544 (from https://pypi.org/simple/pyboolector/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
|
Oh... Hmm... The errors produced are, to put it mildly, difficult to understand. I think I see the issue, though. You're running Arm-architecture macOS, which isn't yet supported by GitHub actions. Unfortunately, the PyBoolector package can really only be installed from PyPi as a binary wheel. |
I installed Boolector by building it from the git repo without any problem at moment. The main obstacle I'm struggling with is how to avoid installing PyBoolector from PYCSV installation to avoid it to be picked up and let it use the Boolector (I think PYBOOLECTOR is still needed due to the interface between C code and Python) am I right ? any additional clue? |
adding the ticket as reference Boolector/boolector#180 |
@EngRaff92, I think what you can do is to install pyVSC with --no-deps and add the Boolector Python package (I assume you build Boolector with the Python interface enabled) on PYTHONPATH. Before attempting to get PyVSC to work, I'd recommend ensuring that you can properly load pyboolector using a simple test script. |
Hello all, made quite few progresses today:
Pretty stuck now here since I need to use py3.9 or py3 since everything is setup on this version and I really cannot go back to the py2.7. Thanks for the support |
Hate to ask an "is it plugged-in" question, but can you confirm that the configure command for python3 includes both --python and --py3? Also, can you confirm that you remove the 'build' directory created by the configure command? I know cmake caches some stuff, and you'll want to ensure a completely-clean build. |
Hmm... Sadly Google isn't helping much here... I'm wondering if explicitly setting PYTHON_LIBRARIES and PYTHON_INCLUDE_DIRS would get you past this issue. You'll need to hack up the end of the 'configure.sh' script to add the appropriate -DPYTHON_LIBRARIES= and -DPYTHON_INCLUDE_DIRS= options to cmake_opts. It appears that PYTHON_LIBRARIES should point to the 3.9.9 .dylib. |
I was hacking around the Cmakelist.txt with no result at moment, I will go for your suggestions as well. Thanks again |
I added this line after running the
this hardcoded line fixes the issues now the BIND is done properly and I'm able to run the following command without problems:
and run the following simple python code: import sys
import random
import vsc
@vsc.randobj
class RandByte:
def __init__(self):
self.byte = vsc.rand_bit_t(8)
def __str__(self):
return("byte = %d".format(self.byte)) along with the api examples provided by boolector. Thanks for the support really I appreciate it |
I think I can close, I will experiment all the features of PYVSC and see if missing something in the installation (hope not) |
Last question before closing, is the pyboolector the only dep? since i ran the pip install with no deps I'm wondering if could have missed something else |
I've used quite a while unfortunately setting the PYTHONPATH to be pointing to the boo lector sadly causes instead PYTEST to fail with the following error: ''' so seems like cannot use VSC and PYTEST together for the time being. I fixed it by removing the PYTHONPATH I set. Any progress on getting boolector running on MACOS ? regards |
After running I always get the following error:
I checked the requirement and ran the pip update along with the pip instal PyBoolector again with no success the error is still there. Any clue on how having this sorted ? Thanks
The text was updated successfully, but these errors were encountered: