installing graph tool on Mac OS X 10.8 by MacPorts

Hello.
Installing graph tool is quite harsh (at least for me) due to the large
dependency on previously installed libs. MacPorts seems useful since it
finds and install automatically all dependencies of any lib you`re trying
to install.
These benefits notwithstanding, I'm having some troubles while concluding
my installation. After installing all required libs using MacPorts, I can't
configure graph tool (by ./configure).

Using ./configure purely, I get this:

checking consistency of all components of python development environment...
no
configure: error: in `/Users/JaquelinyLima/Documents/graphtool':
configure: error:
  Could not link test program to Python. Maybe the main Python library has
been
  installed in some non-standard library path. If so, pass it to configure,
  via the LDFLAGS environment variable.
  Example: ./configure LDFLAGS="-L/usr/non-standard-path/python/lib"

attachment.html (1.75 KB)

Hello.
Installing graph tool is quite harsh (at least for me) due to the large dependency on previously installed libs. MacPorts seems useful since it finds and install automatically all dependencies of any lib you`re trying to install.
These benefits notwithstanding, I'm having some troubles while concluding my installation. After installing all required libs using MacPorts, I can't configure graph tool (by ./configure).

Why not simply installing the package itself using macports as well?

Using ./configure purely, I get this:

checking consistency of all components of python development environment... no
configure: error: in `/Users/JaquelinyLima/Documents/graphtool':
configure: error:
  Could not link test program to Python. Maybe the main Python library has been
  installed in some non-standard library path. If so, pass it to configure,
  via the LDFLAGS environment variable.
  Example: ./configure LDFLAGS="-L/usr/non-standard-path/python/lib"
  ============================================================================
   ERROR!
   You probably have to install the development version of the Python package
   for your distribution. The exact name of this package varies among them.

Using ./configure PYTHON=/Apps/MacPorts/Python2.7 (macports location):

================
Detecting python

checking whether /Apps/MacPorts/Python2.7 version is >= 2.6... no
configure: error: Python interpreter is too old

As the first error message says, you have to pass the correct compiler
directives so that it can find the libraries via LDFLAGS... I think you
are better off simply attempting to install it via macports, which takes
care of this as well.

Cheers,
Tiago

attachment.html (181 Bytes)

Well, sometimes the most simple solutions are the hardest to see. I didn't
look for graph tool as a macports native package. Silly me :stuck_out_tongue:
An offtopic question: I found this group almost at random. Can we ask any
graph-tool related doubt?

Btw,

---> Extracting py27-graph-tool
---> Configuring py27-graph-tool
---> Building py27-graph-tool

it's been almost an hour and it is still building graph tool`s package. Any
insights on how normal is this wait?

attachment.html (2.59 KB)

I closed the terminal window so I could run the port command again. This
happened:

MacBook-Air-de-Jaqueliny:~ JaquelinyLima$ sudo port install py27-graph-tool
@2.2.27
Password:
Waiting for lock on /opt/local/var/macports/registry/.registry.lock

I have no idea on what does it mean.

attachment.html (383 Bytes)

---> Computing dependencies for py27-graph-tool
I got this. Then I installed spyder and ran an working algorithm and got
this:

---> Building py27-graph-tool
---> Staging py27-graph-tool into destroot
---> Installing py27-graph-tool @2.2.27_0
---> Activating py27-graph-tool @2.2.27_0
---> Cleaning py27-graph-tool
---> Updating database of binaries: 100.0%
---> Scanning binaries for linking errors: 9.2%
Warning: Error parsing file /Applications/MacPorts/Python 2.7/Python
Launcher.app/Contents/MacOS/Python Launcher: Error opening or reading file
---> Scanning binaries for linking errors: 100.0%
---> No broken files found.

Then I installed spyder and ran an working algorithm and got this:

dyld: lazy symbol binding failed: Symbol not found:
__ZN5boost6python7objects23register_dynamic_id_auxENS0_9type_infoEPFNSt3__14pairIPvS2_EES5_E
  Referenced from:
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/graph_tool/libgraph_tool_core.so
  Expected in: flat namespace

dyld: Symbol not found:
__ZN5boost6python7objects23register_dynamic_id_auxENS0_9type_infoEPFNSt3__14pairIPvS2_EES5_E
  Referenced from:
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/graph_tool/libgraph_tool_core.so
  Expected in: flat namespace

attachment.html (1.71 KB)

I got this.

---> Computing dependencies for py27-graph-tool
---> Building py27-graph-tool
---> Staging py27-graph-tool into destroot
---> Installing py27-graph-tool @2.2.27_0
---> Activating py27-graph-tool @2.2.27_0
---> Cleaning py27-graph-tool
---> Updating database of binaries: 100.0%
---> Scanning binaries for linking errors: 9.2%
Warning: Error parsing file /Applications/MacPorts/Python 2.7/Python
Launcher.app/Contents/MacOS/Python Launcher: Error opening or reading file
---> Scanning binaries for linking errors: 100.0%
---> No broken files found.

Then I installed spyder and ran an working algorithm and got this:

dyld: lazy symbol binding failed: Symbol not found:
__ZN5boost6python7objects23register_dynamic_id_auxENS0_9type_infoEPFNSt3__14pairIPvS2_EES5_E
  Referenced from:
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/graph_tool/libgraph_tool_core.so
  Expected in: flat namespace

dyld: Symbol not found:
__ZN5boost6python7objects23register_dynamic_id_auxENS0_9type_infoEPFNSt3__14pairIPvS2_EES5_E
  Referenced from:
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/graph_tool/libgraph_tool_core.so
  Expected in: flat namespace

attachment.html (1.73 KB)

Hi,

Please report any problems with the macports package to the macports
project at:

        https://trac.macports.org/newticket

Also, please be careful with double posting to this list. The google
groups interface you are using is just a reflection of the actual
mailing list located at:

        http://lists.skewed.de/mailman/listinfo/graph-tool

Whenever you post and delete a message to the google group, it is not
deleted in the mailing list. So, currently you have been flooding the
list with many repeated messages...

Cheers,
Tiago

Sorry for the flood, and many thanks for the help, Tiago. I'll be more
careful in the next times. By the way, don't we have an 'edit' button?

attachment.html (166 Bytes)

The google group is just an interface to a regular mailing list. Once an
email is sent, it can no longer be edited.

Cheers,
Tiago

hello all,

I get the same errors as the ones posted above when I install the package
through macports.

dyld: lazy symbol binding failed: Symbol not found:
__ZN5boost6python7objects23register_dynamic_id_auxENS0_9type_infoEPFNSt3__14pairIPvS2_EES5_E
  Referenced from:
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/graph_tool/libgraph_tool_core.so
  Expected in: flat namespace

dyld: Symbol not found:
__ZN5boost6python7objects23register_dynamic_id_auxENS0_9type_infoEPFNSt3__14pairIPvS2_EES5_E
  Referenced from:
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/graph_tool/libgraph_tool_core.so
  Expected in: flat namespace

It builds fine, but when I import graph_tool in python, I get this error. I
have tried several different things, but I have not been able to fix it. Is
there a stable version we can install through macports? I am new here, but
just a suggestion. I have found the installation process for this package to
be fraught with so many difficulties. For such a useful package, maybe more
effort needs to be invested in making it easily accessible to install. This
is perhaps the only advantage I really think networkx has at the moment.

Anyway, I'd like help with this.

Thanks very much.

hello all,

I get the same errors as the ones posted above when I install the package
through macports.

dyld: lazy symbol binding failed: Symbol not found:
__ZN5boost6python7objects23register_dynamic_id_auxENS0_9type_infoEPFNSt3__14pairIPvS2_EES5_E
  Referenced from:
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/graph_tool/libgraph_tool_core.so
  Expected in: flat namespace

dyld: Symbol not found:
__ZN5boost6python7objects23register_dynamic_id_auxENS0_9type_infoEPFNSt3__14pairIPvS2_EES5_E
  Referenced from:
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/graph_tool/libgraph_tool_core.so
  Expected in: flat namespace

Y

It builds fine, but when I import graph_tool in python, I get this error. I
have tried several different things, but I have not been able to fix it. Is
there a stable version we can install through macports?

This is a stable version. The problem is probably due to boost python
being compiled against a different python version, or with a different
compiler.

Questions related to installations through macports are better handled
by the macports project. You can submit a bug report at:

   https://trac.macports.org/auth/login/?next=/newticket

They are usually very responsive.

I am new here, but just a suggestion. I have found the installation
process for this package to be fraught with so many difficulties. For
such a useful package, maybe more effort needs to be invested in
making it easily accessible to install. This is perhaps the only
advantage I really think networkx has at the moment.

Networkx is a pure python package, and requires no
compilation. Graph-tool requires compilation, since the backbone is in
C++, and it depends on other C/C++ libraries. Because of this, there
will always be more hurdles with graph-tool than with networkx, since
all dependencies need to be in place, and much fewer people understand
how to set them up. This is made trivial by operating systems which
perform automatic dependency tracking, such as virtually any GNU/Linux
distro. MacOS lacks this in the OS, but it is provided by macports (and
homebrew, and fink), which is a huge help, but it is not perfect, as you
have seen.

I try to make this easier by offering pre-compiled packages, but it is
unfeasible to do this for every OS/Architecture out there. I would make
pre-compiled packages for MacOS, since it would quench about 90% of the
compilation problems reported to me, but I don't have access to a modern
MacOS machine.

But I'm always open to constructive suggestions...

Best,
Tiago