graph-tool crahes on import - python-2.7

Using Python 2.7 I try to import graph-tool:
from graph_tool.all import *
Each time I execute the above command the following error is returned and Python crashes.
dyld: lazy symbol binding failed: Symbol not found:
__ZN5boost6python6detail11init_moduleEPKcPFvvE Referenced from: /usr/local/lib/python2.7/site-packages/graph_tool/libgraph_tool_core.so
Expected in: flat namespace
dyld: Symbol not found: __ZN5boost6python6detail11init_moduleEPKcPFvvE
Referenced from:
/usr/local/lib/python2.7/site-packages/graph_tool/libgraph_tool_core.so
Expected in: flat namespace
Trace/BPT trap: 5
I installed graph-tool with homebrew on Mac OSX 10.10. Does anybody know how to fix this issue?

There is probably a mismatch between the python version you are using,
and the one used to compile boost::python and graph-tool.
For example, you might be using the system's python, whereas
graph-tool/python were compiled with a version installed via homebrew.

Python modules have been installed but the site-packages may not be
in your Python sys.path, so you will not be able to import the modules
this formula installed. If you plan to develop with these modules,
please run like this:
mkdir -p /Users/myname/Library/Python/2.7/lib/python/site-packages
echo 'import site; site.addsitedir("/usr/local/lib/python2.7/site-packages")' >> /Users/myname/Library/Python/2.7/lib/python/site-packages/homebrew.pth
In my case it's the homebrew site-packages, but may not yours

Related

Error while knitting Rmarkdown with reticulate: OSError: libomp.dylib not found

I'm trying to knit an Rmarkdown with reticulate for a chunk of python code.
Knitting throws out an error saying libomp.dylib not found, but the code runs fine as a chunk (not knitted).
Machine: Macbook M1 Max
OS: Ventura 13.0.1
I used below packages for python with reticulate.
library(reticulate)
use_python("/Users/ramanujam/opt/anaconda3/bin/python")
from lazypredict.Supervised import LazyClassifier
from sklearn.model_selection import train_test_split
I'm Getting the error below.
However, code executes fine as a chunk.
Error in py_call_impl(callable, dots$args, dots$keywords) :
OSError: dlopen(/Users/xxx/opt/anaconda3/lib/python3.9/site-packages/lightgbm/lib_lightgbm.so, 0x0006): Library not loaded: /usr/local/opt/libomp/lib/libomp.dylib
Referenced from: <8DF2AF67-B85F-3F67-B687-E50A514307EC> /Users/xxx/opt/anaconda3/lib/python3.9/site-packages/lightgbm/lib_lightgbm.so
Reason: tried: '/usr/local/opt/libomp/lib/libomp.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/opt/libomp/lib/libomp.dylib' (no such file), '/usr/local/opt/libomp/lib/libomp.dylib' (no such file), '/Library/Frameworks/R.framework/Resources/lib/libomp.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64')), '/Library/Java/JavaVirtualMachines/jdk1.8.0_241.jdk/Contents/Home/jre/lib/server/libomp.dylib' (no such file)
I underestand this is a dependency on libomp.
I already tried installing libomp with
brew install libomp
Tried creating a symlink to R.framework path from the brew install location but there is a conflict of architecture there.
Since the code executes in chunk but has trouble during knitting, I'm guessing the libomp source used is different there. But I'm not clear on how or why Rstudio would have a different source while running in chunks vs. knitting as I have specified the python path to be used.
Any help would be appreciated. Thanks in advance!

dyld: Library not loaded: /usr/local/opt/gsl/lib/libgsl.23.dylib

I am trying to get a piece of software called emergent working. It relies on qt and coin, which I've both installed.
But when I try to run emergent, I get the following error:
dyld: Library not loaded: /usr/local/opt/gsl/lib/libgsl.23.dylib
Referenced from: /usr/local/bin/emergent
Reason: image not found
Abort trap: 6
gsl 2.6 is already installed on my computer. Also using Mac OS. Any ideas what could be causing this?
ls /usr/local/opt/gsl
see which version of the library you have (I had .25)
then
ln -s libgsl.25.dylib libgsl.23.dylib
Makes symbolic link between files.
then it worked!

Caffe2 installed correct but can't load glog library

I pip installed caffe2 via a "Prebuilt Caffe2 Python Wheel" without an error. But running the first example I get the following error message which seems not be able to find/load "/usr/local/opt/glog/lib/libglog.0.dylib".
If I import caffe2.python it does not give me an error.
The glog is missing in usr/local/opt.
Is this a Mac GPU problem ? I know that CUDA is a problem/does not run on Mac or is there anything else I missed/I have to do. ?
Thanks for any help.
WARNING:root:This caffe2 python run does not have GPU support. Will run in CPU only mode.
WARNING:root:Debug message: No module named caffe2_pybind11_state_gpu
CRITICAL:root:Cannot load caffe2.python. Error: dlopen(/usr/local/lib/python2.7/site-packages/caffe2/python/caffe2_pybind11_state.so, 10): Library not loaded: /usr/local/opt/glog/lib/libglog.0.dylib
Referenced from: /usr/local/lib/python2.7/site-packages/caffe2/python/caffe2_pybind11_state.so
Reason: image not found

Importing Numpy in embedded Python c++ application

I would like to have a script invoke numpy from a c++ embedded python runtime by setting the runtime path to know about the numpy module located within site-packages.
However I get the error:
cannot import name 'multiarray'
from \Lib\site-packages\numpy\core__init_.py on the line
from . import multiarrray
I have tried to set the os.path to be xxx\numpy\core but it still cannot seem to find the multiarray.pyd file during the import statement
I have read through similar questions posed but none of the answers seem relevant to my case.
I am using Python 3.4.4 (32 bit) and have installed Numpy 1.11.1 using the wheel
numpy-1.11.1-cp34-none-win32.whl
python -m pip install numpy-1.11.1-cp34-none-win32.whl
Completed without any errors.
Seems like the failure message maybe more general than just an incomplete PYTHONPATH?
Also think it might be broader than Numpy in that ANY .pyd based package that is imported from the embedded environment will have this problem?
Any help appreciated.
Did you ensure all your NumPy includes: \numpy\core\include\numpy\ were present during the build? That's the only time I get those types of errors was if the build couldn't find all the NumPy includes... although during embedding I found that the numpy entire directory (already built on your build machine) has to be inside a directory under Py_SetPath(python35.lib;importlibs); assuming importlibs is a directory with NumPy inside and anything else you want to bundle.
Seems like the answer was to install python 3.4.1 to match the python34.dll version of 3.4.1.

"ImportError: ... Expected in: flat namespace" when setting up a mysql database

mySQL seems to be up and running just fine. But when I try to import MySQLdb into python I get a ImportError: ... Expected in: flat namespace. I think it has to do with having two different versions for python (well two different directories, same version)
OS: Mac 10.6.8
$ ls /Library/Frameworks/Python.framework/Versions/
7.2 Current
$ which python
/Library/Frameworks/Python.framework/Versions/Current/bin/python
$ echo $PATH
/Library/Frameworks/Python.framework/Versions/Current/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin
$ easy_install MySQL-python
...
...
Using /Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.5-i386.egg
...
$ mysql.server start
Starting MySQL
.. SUCCESS!
$ python manage.py runserver
...
...
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: dlopen(/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.5-i386.egg/_mysql.so, 2): Symbol not found: _mysql_affected_rows
Referenced from: /Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.5-i386.egg/_mysql.so
Expected in: flat namespace
in /Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.5-i386.egg/_mysql.so
$ python
Enthought Python Distribution (EPD) free version -- www.enthought.com
Version: 7.2-2 (32-bit)
>>> import MySQLdb
...
...
ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.5-i386.egg/_mysql.so, 2): Symbol not found: _mysql_affected_rows
Referenced from: /Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.5-i386.egg/_mysql.so
Expected in: flat namespace
in /Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.5-i386.egg/_mysql.so
So in addition to being new to django and python I'm also new to using the terminal, and I'm not exactly sure what I'm looking at.
But I can tell the obvious:
I have two versions, 7.2 and current.
If I call python it will call the 'Current' version. That makes sense, it's in $PATH.
However, a version 2.7 (not 7.2) is also in PATH which I had deleted when I installed the EDP package. ...I don't fully understand what PATH is or does so I didn't want to start changing things
MySQL-python is installed in version 7.2
Can't run the server because a necessary file isn't in flat namespace and it's at the place it was installed too
Is there some way to untangle these paths (if that's the problem)
thank you in advance
Well... I don't think it had anything the do with the "Current" and "7.2" versions of python.
It seems to have fixed itself after doing
pip uninstall MySQL-python
brew uninstall mysql
brew install mysql --universal
pip install MySQL-python
I'm not sure if the --universal made the diference or using pip install as opposed to easy_install