I just tried loading gridflow 9.13 on Pd-extended 0.43 on Mac OS X 10.6.8, and it couldn't load because it was looking for libpng12.0.dylib inside of Pd-extended. The included dylibs are automatically included based on what the included objects are linked to, so they are not good to rely on, because they can change in a given version.
So you can easily include libpng12.0.dylib in your gridflow package, here's how:
cp /Applications/Pd-extended.app/Contents/lib/libpng12.0.dylib \ /Library/Pd/gridflow/libpng12/ install_name_tool -id /Library/Pd/gridflow/libpng12/libpng12.0.dylib \ /Library/Pd/gridflow/libpng12/libpng12.0.dylib install_name_tool -change @executable_path/../../lib/libpng12.0.dylib \ @loader_path/libpng12/libpng12.0.dylib \ /Library/Pd/gridflow/gridflow.pd_darwin
Now the gridflow/ folder can go into /Library/Pd, ~/Library/Pd or anywhere really. @loader_path is the path from where gridflow.pd_darwin is loaded.
.hc
----------------------------------------------------------------------------
"A cellphone to me is just an opportunity to be irritated wherever you are." - Linus Torvalds
On Feb 11, 2012, at 11:31 AM, Hans-Christoph Steiner wrote:
I just tried loading gridflow 9.13 on Pd-extended 0.43 on Mac OS X 10.6.8, and it couldn't load because it was looking for libpng12.0.dylib inside of Pd-extended. The included dylibs are automatically included based on what the included objects are linked to, so they are not good to rely on, because they can change in a given version.
So you can easily include libpng12.0.dylib in your gridflow package, here's how:
cp /Applications/Pd-extended.app/Contents/lib/libpng12.0.dylib \ /Library/Pd/gridflow/libpng12/ install_name_tool -id /Library/Pd/gridflow/libpng12/libpng12.0.dylib \ /Library/Pd/gridflow/libpng12/libpng12.0.dylib install_name_tool -change @executable_path/../../lib/libpng12.0.dylib \ @loader_path/libpng12/libpng12.0.dylib \ /Library/Pd/gridflow/gridflow.pd_darwin
Now the gridflow/ folder can go into /Library/Pd, ~/Library/Pd or anywhere really. @loader_path is the path from where gridflow.pd_darwin is loaded.
I forgot to say, it will be relocatable once all of the libs in gridflow/libs are set to @loader_path/libs/, i.e.
install_name_tool -change \ /Library/Pd/gridflow/libs/libglib-1.2.0.dylib \ @loader_path/libs/libglib-1.2.0.dylib \ /Library/Pd/gridflow/gridflow.pd_darwin
.hc
----------------------------------------------------------------------------
"[T]he greatest purveyor of violence in the world today [is] my own government." - Martin Luther King, Jr.
Le 2012-02-11 à 11:31:00, Hans-Christoph Steiner a écrit :
I just tried loading gridflow 9.13 on Pd-extended 0.43 on Mac OS X 10.6.8, and it couldn't load because it was looking for libpng12.0.dylib inside of Pd-extended. The included dylibs are automatically included based on what the included objects are linked to, so they are not good to rely on, because they can change in a given version.
GridFlow 9.13 binaries for OSX already comes with libpng12.dylib.
GridFlow 9.13 source is slightly older, and doesn't include some fixes that I made when I built the binary package.
I should really, really release the 9.14 source...
So you can easily include libpng12.0.dylib in your gridflow package, here's how:
It's been like that in SVN for no less than 12 months.
I also vaguely remember trying to compile with libpng14 at first, but that must have been an older story... I don't remember what had gone wrong. It seems that either would work with GF (as long as libpng12 is recent enough), but the headers have to match the lib.
______________________________________________________________________ | Mathieu BOUCHARD ----- téléphone : +1.514.383.3801 ----- Montréal, QC
On Feb 11, 2012, at 12:16 PM, Mathieu Bouchard wrote:
Le 2012-02-11 à 11:31:00, Hans-Christoph Steiner a écrit :
I just tried loading gridflow 9.13 on Pd-extended 0.43 on Mac OS X 10.6.8, and it couldn't load because it was looking for libpng12.0.dylib inside of Pd-extended. The included dylibs are automatically included based on what the included objects are linked to, so they are not good to rely on, because they can change in a given version.
GridFlow 9.13 binaries for OSX already comes with libpng12.dylib.
GridFlow 9.13 source is slightly older, and doesn't include some fixes that I made when I built the binary package.
I should really, really release the 9.14 source...
So you can easily include libpng12.0.dylib in your gridflow package, here's how:
It's been like that in SVN for no less than 12 months.
I also vaguely remember trying to compile with libpng14 at first, but that must have been an older story... I don't remember what had gone wrong. It seems that either would work with GF (as long as libpng12 is recent enough), but the headers have to match the lib.
I just downloaded gridflow-9.13-macosx104-i386.tar.gz and it was looking for libpng12 at @executable_path/../../lib/libpng.12.0.dylib.
.hc
----------------------------------------------------------------------------
I spent 33 years and four months in active military service and during that period I spent most of my time as a high class muscle man for Big Business, for Wall Street and the bankers. - General Smedley Butler
Le 2012-02-11 à 14:18:00, Hans-Christoph Steiner a écrit :
I just downloaded gridflow-9.13-macosx104-i386.tar.gz and it was looking for libpng12 at @executable_path/../../lib/libpng.12.0.dylib.
I don't know what happened... the current script gridflow/bin/build_osx_package uses install_name_tool -change $LIB $BUNDLED_PREFIX/$FILENAME where BUNDLED_PREFIX="/Library/Pd/gridflow/libs"
And I just looked at the same script in 9.13 and 9.12 tarballs and they do the same.
I don't know what is @executable_path... nor how to set it, or not set it.
______________________________________________________________________ | Mathieu BOUCHARD ----- téléphone : +1.514.383.3801 ----- Montréal, QC
On Feb 13, 2012, at 11:05 PM, Mathieu Bouchard wrote:
Le 2012-02-11 à 14:18:00, Hans-Christoph Steiner a écrit :
I just downloaded gridflow-9.13-macosx104-i386.tar.gz and it was looking for libpng12 at @executable_path/../../lib/libpng.12.0.dylib.
I don't know what happened... the current script gridflow/bin/build_osx_package uses install_name_tool -change $LIB $BUNDLED_PREFIX/$FILENAME where BUNDLED_PREFIX="/Library/Pd/gridflow/libs"
And I just looked at the same script in 9.13 and 9.12 tarballs and they do the same.
I don't know what is @executable_path... nor how to set it, or not set it.
@executable_path is a variable, you just literally use that string, and the OS will replace it with the path to the executable of the program that's loading the dylib. Basically, that's /Applications/Pd-extended/Contents/Resources/bin.
Then there is @loader_path, which I think is more useful. That's the path that a given dylib is being loaded from, so in the case of gridflow.pd_darwin that would be replaced with ~/Library/Pd, or /Library/Pd or whatever.
.hc
----------------------------------------------------------------------------
"[T]he greatest purveyor of violence in the world today [is] my own government." - Martin Luther King, Jr.