PackageMaker
From Emergent
TODO: Update these instructions for Emergent
Warning: You will certainly need to modify these commands based on your own setup.
Contents |
Step 0: Pre-reqs
Ask otool what emergent is linked against. We're going to include everything non-standard:
mingus@mightyme:/Users/mingus -> otool -L `which pdp++`
/usr/local/bin/pdp++:
Inventor.framework/Versions/B/Inventor (compatibility version 45.0.0, current version 45.6.0)
/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (compatibility version 1.0.0, current version 1.0.0)
SoQt.framework/Versions/A/SoQt (compatibility version 25.0.0, current version 25.1.0)
QtGui.framework/Versions/4/QtGui (compatibility version 4.2.0, current version 4.2.3)
QtOpenGL.framework/Versions/4/QtOpenGL (compatibility version 4.2.0, current version 4.2.3)
QtCore.framework/Versions/4/QtCore (compatibility version 4.2.0, current version 4.2.3)
Qt3Support.framework/Versions/4/Qt3Support (compatibility version 4.2.0, current version 4.2.3)
QtXml.framework/Versions/4/QtXml (compatibility version 4.2.0, current version 4.2.3)
QtNetwork.framework/Versions/4/QtNetwork (compatibility version 4.2.0, current version 4.2.3)
QtSql.framework/Versions/4/QtSql (compatibility version 4.2.0, current version 4.2.3)
/System/Library/Frameworks/QuickTime.framework/Versions/A/QuickTime (compatibility version 1.0.0, current version 200.0.0)
/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 18.0.0)
/System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices (compatibility version 1.0.0, current version 22.0.0)
/usr/local/lib/libpdp-4.0.3rc1.1.dylib (compatibility version 2.0.0, current version 2.0.0)
/usr/local/lib/libtacss-4.0.3rc1.1.dylib (compatibility version 2.0.0, current version 2.0.0)
/opt/local/lib/libgslcblas.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/sw/lib/ncurses/libncurses.5.dylib (compatibility version 5.0.0, current version 5.0.0)
/opt/local/lib/libode.dylib (compatibility version 0.0.0, current version 0.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 88.5.1)
/opt/local/lib/libgsl.0.dylib (compatibility version 11.0.0, current version 11.0.0)
/opt/local/lib/libreadline.5.1.dylib (compatibility version 5.0.0, current version 5.1.0)
/usr/local/lib/libsimage.20.dylib (compatibility version 27.0.0, current version 27.1.0)
/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.4.0)
/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)
Make copies of all the dylibs we are shipping into /usr/local/lib and remove MacPorts and Fink from our LD_LIBRARY_PATH so pdp links against the /usr/local/lib copies.
cp /opt/local/lib/libgslcblas.0.dylib /sw/lib/ncurses/libncurses.5.dylib /opt/local/lib/libode.dylib /opt/local/lib/libgsl.0.dylib /opt/local/lib/libreadline.5.1.dylib /usr/local/lib/libsimage.20.dylib /usr/local/lib for ii in /opt/local/lib/libgslcblas.0.dylib /sw/lib/ncurses/libncurses.5.dylib /opt/local/lib/libode.dylib /opt/local/lib/libgsl.0.dylib /opt/local/lib/libreadline.5.1.dylib /usr/local/lib/libsimage.20.dylib;do cp $ii /tmp/pdp4dir$ii;done echo Before: $LD_LIBRARY_PATH;export LD_LIBRARY_PATH=$(echo $LD_LIBRARY_PATH | sed 's,\/opt\/local\/lib,,;s,\/sw\/lib,,;s,^:,,;s,::,:,g');echo After: $LD_LIBRARY_PATH
Step 1: PDP++
If you've already got pdp built and it is linked against libraries in MacPorts/Fink or other places, you need to rebuild.
cd $PDP4DIR && make clean && ./configure && make -j2 && ./configure --prefix=/tmp/pdp4dir/usr/local && make -t install && make install
Step 2: Copy
mkdir -p /tmp/pdp4dir/usr/local/lib /tmp/pdp4dir/Library/Frameworks /tmp/pdp4dir/opt/local/lib /tmp/pdp4dir/sw/lib/ncurses cp -r /Library/Frameworks/SoQt.framework /Library/Frameworks/QtGui.framework /Library/Frameworks/QtOpenGL.framework /Library/Frameworks/QtCore.framework /Library/Frameworks/Qt3Support.framework /Library/Frameworks/QtXml.framework /Library/Frameworks/QtNetwork.framework /Library/Frameworks/QtSql.framework /Library/Frameworks/Inventor.framework /tmp/pdp4dir/Library/Frameworks # ignore errors cd /tmp/pdp4dir/Applications && wget http://grey.colorado.edu/pdp/images/5/51/Pdp_app.tar && tar -xf pdp_app.tar && rm pdp_app.tar
- Download Pdp_app.tar, unpack it into
/tmp/pdp4dir/Applications/
Step 3: PackageMaker
- Start up PackageMaker
- Select
Single Package Project - Title: PDP++
- Description: PDP++ is a comprehensive simulation environment for creating complex, sophisticated models of the brain and cognitive processes using neural network models. These same networks can also be used for all kinds of other more pragmatic tasks, like predicting the stock market or analyzing data. It includes a full GUI environment for constructing networks and the input/output patterns for the networks to process, and many different analysis tools for understanding what the networks are doing. It has a new tabbed-browser style interface with full 3D graphics (via OpenGL and Open Inventor/Coin3D), and powerful new GUI programming tools and data processing and analysis capabilities.
- next tab
- Root:
/tmp - next tab
- Default location:
/ - Check
Allow revert to previous version - Click
Edit Package Requirements - next next tab
- Identifier:
PDP++ - Get info string:
4.0.3, Computational Cognitive Neuroscience Lab - Version:
4.0.3rc1 - Select
Project > Build - Save As: pdp-4.0.3rc1
