eomahony / Numberjack

Python Combinatorial Optimisation Platform
http://numberjack.ucc.ie
GNU Lesser General Public License v2.1
157 stars 36 forks source link

Unable to install with scip #17

Closed myisis closed 10 years ago

myisis commented 10 years ago

I followed the instructions from the readme and when I run make (step 5), this error message occurs:

ffind: illegal option -- n
usage: find [-H | -L | -P] [-EXdsx] [-f path] path ... [expression]
       find [-H | -L | -P] [-EXdsx] -f path [path ...] [expression]
Makefile:47: /make/make.project: No such file or directory
find: illegal option -- n
usage: find [-H | -L | -P] [-EXdsx] [-f path] path ... [expression]
       find [-H | -L | -P] [-EXdsx] -f path [path ...] [expression]
find: illegal option -- n
usage: find [-H | -L | -P] [-EXdsx] [-f path] path ... [expression]
       find [-H | -L | -P] [-EXdsx] -f path [path ...] [expression]
make[1]: *** No rule to make target `/make/make.project'.  Stop.

I then remove line 47 include $(SCIPDIR)/make/make.project and get this error message.

make[1]: *** No rule to make target `python/SCIP.i', needed by `wrapper'.  Stop.
make: *** [scip_lib] Error 2

Is there anything else I need to do? I used the current master of NumberJack.

9thbit commented 10 years ago

Hi, You need to set ZIBPATH to point to the folder containing the scipoptsuite source code.

We're currently working on the new build system, under the distutils branch (https://github.com/eomahony/Numberjack/tree/distutils). If you download this branch, you can simply place the scipoptsuite-3.1.0.tgz in the same folder as the extracted Numberjack code and run python setup.py build, followed by python setup.py install. Let us know if this resolves your issue.

Regards, Barry

myisis commented 10 years ago

I can't find the link to this branch any more, but if this is now Numberjack-1.1.0 the installation through pip runs fine without any errors. Is there anything else besides pip install numberjack to get it running with scip? I tried the warehouse example from your website and get this error message (ZIBPATH was set to /usr/local/scip-3.1.0):

Traceback (most recent call last):
  File "warehouse.py", line 62, in <module>
    solve_warehouse_planning(WareHouseData(), input({'solver':'SCIP'}))
  File "warehouse.py", line 35, in solve_warehouse_planning
    solver = model.load(param['solver'])
  File "/usr/local/lib/python2.7/site-packages/Numberjack/__init__.py", line 849, in load
    raise ImportError("ERROR: Failed during import, wrong module name? (%s)" % library)
ImportError: ERROR: Failed during import, wrong module name? (SCIP)
9thbit commented 10 years ago

Hi @myisis, To help debug, can you send the complete output log of pip install numberjack and a directory listing of /usr/local/scip-3.1.0 to numberjack.support@gmail.com

Regards, Barry

myisis commented 10 years ago
$ ls /usr/local/scip-3.1.0
CHANGELOG   INSTALL     bin     doc     examples    lib     obj     src
COPYING     Makefile    check       done.txt    interfaces  make        release-notes

Installation output log here.

9thbit commented 10 years ago

It looks like you are pointing ZIBPATH to the installed location of SCIP, it should point to the directory where you have extracted scipoptsuite-3.1.0.tgz The folder should contain scip-3.1.0.tgz, soplex-2.0.0.tgz, zimpl-3.3.2.tgz etc.

myisis commented 10 years ago

I've used brew to install SCIP. Does this not work?

9thbit commented 10 years ago

No, you need to download the scipoptsuite tgz from http://scip.zib.de/#download