问题
I just tried installing PySCIPOpt with pip by doing "pip install pyscipopt", however I get the following error message:
What am I doing wrong?
I'm running Python 2.7 on a 64-bit Windows 10 machine. It wouldn't let me post the question like this, so I deleted some obvious parts from the error message below.
Collecting pyscipopt
Using cached PySCIPOpt-1.2.0.tar.gz
Building wheels for collected packages: pyscipopt
Running setup.py bdist_wheel for pyscipopt ... error
Complete output from command C:\Python27\python.exe -u -c "import setuptools, tokenize;__file__='c:\\users\\daniel\\appdata\\local\\temp\\pip-build-kejfxp\\pyscipopt\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d c:\users\daniel\appdata\local\temp\tmpaj_ydopip-wheel- --python-tag cp27:
scipoptir:
includedir: c:\users\daniel\appdata\local\temp\pip-build-kejfxp\pyscipopt\include
libdir: c:\users\daniel\appdata\local\temp\pip-build-kejfxp\pyscipopt\lib
running bdist_wheel
creating build\temp.win32-2.7\Release\src\pyscipopt
C:\Program Files (x86)\Common Files\Microsoft\Visual C++ for Python\9.0\VC\Bin\cl.exe /c /nologo /Ox /MD /W3 /GS- /DNDEBUG -Ic:\users\daniel\appdata\local\temp\pip-build-kejfxp\pyscipopt\include -IC:\Python27\include -IC:\Python27\PC /Tcsrc\pyscipopt\scip.c /Fobuild\temp.win32-2.7\Release\src\pyscipopt\scip.obj
scip.c
src\pyscipopt\scip.c(507) : fatal error C1083: Cannot open include file: 'scip/scip.h': No such file or directory
error: command 'C:\\Program Files (x86)\\Common Files\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\cl.exe' failed with exit status 2
----------------------------------------
Failed building wheel for pyscipopt
Running setup.py clean for pyscipopt
Failed to build pyscipopt
Installing collected packages: pyscipopt
Running setup.py install for pyscipopt ... error
Complete output from command C:\Python27\python.exe -u -c "import setuptools, tokenize;__file__='c:\\users\\daniel\\appdata\\local\\temp\\pip-build-kejfxp\\pyscipopt\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record c:\users\daniel\appdata\local\temp\pip-zqfl67-record\install-record.txt --single-version-externally-managed --compile:
scipoptir:
includedir: c:\users\daniel\appdata\local\temp\pip-build-kejfxp\pyscipopt\include
libdir: c:\users\daniel\appdata\local\temp\pip-build-kejfxp\pyscipopt\lib
running install
creating build\temp.win32-2.7\Release\src\pyscipopt
C:\Program Files (x86)\Common Files\Microsoft\Visual C++ for Python\9.0\VC\Bin\cl.exe /c /nologo /Ox /MD /W3 /GS- /DNDEBUG -Ic:\users\daniel\appdata\local\temp\pip-build-kejfxp\pyscipopt\include -IC:\Python27\include -IC:\Python27\PC /Tcsrc\pyscipopt\scip.c /Fobuild\temp.win32-2.7\Release\src\pyscipopt\scip.obj
scip.c
src\pyscipopt\scip.c(507) : fatal error C1083: Cannot open include file: 'scip/scip.h': No such file or directory
error: command 'C:\\Program Files (x86)\\Common Files\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\cl.exe' failed with exit status 2
----------------------------------------
Command "C:\Python27\python.exe -u -c "import setuptools, tokenize;__file__='c:\\users\\daniel\\appdata\\local\\temp\\pip-build-kejfxp\\pyscipopt\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record c:\users\daniel\appdata\local\temp\pip-zqfl67-record\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in c:\users\daniel\appdata\local\temp\pip-build-kejfxp\pyscipopt\
It still doesn't let me post the question, so here's some more text, maybe now it will work. It still doesn't. Maybe now?
回答1:
This question is already answered here: https://github.com/SCIP-Interfaces/PySCIPOpt/issues/102
What was missing - apart from installing the SCIP Opt Suite - was to set the path to where the SCIP Opt Suite was installed:
set SCIPOPTDIR="C:\Program Files\SCIPOptSuite"
or something similar.
回答2:
Installation instructions says:
SCIPOPTDIR needs to have a subdirectory lib that contains the library.
Additionally, if you're building PySCIPOpt from source, i.e. not using the precompiled egg or wheel, you also need to place all SCIP header files into a directory include next to lib (this is done automatically by make install INSTALLDIR=$SCIPOPTDIR SHARED=true of the SCIP Optimization Suite)
So first you need to install SCIP Optimization Suite.
来源:https://stackoverflow.com/questions/47227583/installing-pyscipopt-on-python-2-7-windows-10-via-pip-doesnt-work