[Ipopt] ipopt with python
Tony Kelman
kelman at berkeley.edu
Fri Nov 21 10:44:21 EST 2014
I don’t know the Python interfaces to Ipopt very well. One thing you might try is configuring Ipopt with --enable-dependency-linking, I think that can be necessary to dlopen Ipopt shared libraries including their dependencies from Python or Julia or other languages. You won’t have dll’s on Ubuntu, you’ll have .so shared libraries.
-Tony
From: Vyacheslav Kungurtsev
Sent: Friday, November 21, 2014 7:32 AM
To: Tony Kelman
Cc: ipopt at list.coin-or.org
Subject: ipopt with python
Hello,
Somehow after the weekend I tried again and ipopt installed just fine and the examples ran OK. I have no idea what happened.
Now I am trying to run ipopt with python, and having trouble with both pyipopt and cyipopt
With pyipopt:
the error appears as:
~/pyipopt/examples$ python hs071.py
Traceback (most recent call last):
File "hs071.py", line 6, in <module>
import pyipopt
File "/usr/local/lib/python2.7/
dist-packages/pyipopt/__init__.py", line 16, in <module>
from pyipoptcore import *
ImportError: /usr/local/lib/python2.7/dist-packages/pyipopt/pyipoptcore.so: undefined symbol: _ZTVN10__cxxabiv117__class_type_infoE
Indeed, it so happens that:
$ nm /usr/local/lib/python2.7/dist-
packages/pyipopt/pyipoptcore.so | grep _ZTVN10__cxxabiv117__class_type_infoE
U _ZTVN10__cxxabiv117__class_type_infoE
the symbol arises from libstdc++ and I have tried adding it to setup.py as such:
extra_link_args=['-libstdc++']
,
or
extra_link_args=['-libstdc++', + IPOPT_LIB],
or
libraries=[
...
'coinmetis','libstdc++',
...
and in all cases setup.py installs with no error, but the import error remains when I try to run the example.
Do you have any suggestions? Am I linking it improperly in the setup file?
With cyipopt the setup.py requires:
these
IPOPT_ICLUDE_DIRS=['include_mt/coin', np.get_include()]
IPOPT_LIBS=['Ipopt39', 'IpoptFSS']
IPOPT_LIB_DIRS=['lib_mt/x64/release']
IPOPT_DLL=['Ipopt39.dll', 'IpoptFSS39.dll']
to be set correctly. I am not quite sure how to find the proper directories. Would I even have dll files given that I am running ubuntu?
Sorry if the question is rather basic.
some info about my computer, if it helps:
Ubuntu 14.04
gcc (Ubuntu 4.8.2-19ubuntu1) 4.8.2
g++ (Ubuntu 4.8.2-19ubuntu1) 4.8.2
Thank you
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/ipopt/attachments/20141121/c581490f/attachment.html>
More information about the Ipopt
mailing list