[cctbxbb] differing build and install directories?

Erik Mckee emckee at cs.tamu.edu
Tue Sep 27 23:22:50 PDT 2005


OK, that sounds reasonable....Why can't your script compile it, create a
binary bundle, and then use that bundle in the package?  That bundle is
relocatable, and only relies on the setpaths.csh that is created....  You
need that bit of environment variables anyway, don't you?

On Tue, 27 Sep 2005, William Scott wrote:

> Hi Erik:
>
> Thanks for the quick reply.
>
> The reason I want to do this is the following:
>
> I've been maintaining a Debian package for ccp4 in the Fink package
> management system for Mac OS X for the last several years
>
> cf:  http://fink.sourceforge.net/pdb/package.php/ccp4
>
> It works much like the Debian packaging system on Debian Linux (from
> which it evolved).
>
> ccbtx is now distributed with ccp4 (starting with version 6).  I'd
> like to include the script for installing the full ccp4 package.  So
> far everything builds and installs fine.  Everything works except for
> ccbtx, because if I move it from its original build location (a
> temporary directory), it breaks (the old path persists).
>
> Anyway, the idea is to distribute the build script (essentially
> embedded unix shell scripts) rather than any code, and the user
> simply issues the command
>
> fink install ccp4
>
> and the package management system downloads ccp4, compiles and then
> installs everything, and sets up environment variables in such a way
> that everything simply works "out of the box."  The install process
> involves building into a debian archive file, and then installing
> from this package.  You could  then in principle distribute the
> debian pre-compiled package, and this is done for GPL software, but
> the ccp4 license is such that fink cannot distribute the binaries,
> only the recipies for the automatic install.
>
> So basically I need a way of compiling in /absolute/path/A and then
> moving to /another/absolute/path/B.
>
> The other issue is that I need to hard-code in the DYLIB path instead
> of relying on an environment variable, which I am not allowed to set.
>
> I should have confessed at the outset (and you probably guessed) that
> I am an luser, not a programmer.  Sorry.
>
>
> Thanks.
>
> Bill Scott
>
>
> On Sep 27, 2005, at 10:01 PM, Erik Mckee wrote:
>
> > If this is for binaries, there is a binary bundle functionality
> > available.
> > This creates a perl .selfx file which the user can put anywhere,
> > which may
> > be essentially what you want.  Look at the
> > libtbx.start_binary_bundle and
> > libtbx.as_selfx commands... (I think those are the coorect ones, or at
> > least close enough :) )
> >
> > Are you needing specially made ones, or can you just use the .selfx
> > files
> > from the download page?
> >
> > On Tue, 27 Sep 2005, William Scott wrote:
> >
> >
> >>   Dear Ralf:
> >>
> >> Sorry to keep pestering you.  I'm now trying to build debian
> >> packages, which means the build directory differs from the install
> >> directory.
> >>
> >> Because of this, a lot of the shell scripts, python scripts, and
> >> compiled binaries in cctbx have a path like /sw/src/fink.build/
> >> ccp4-5.99.3-1/ccp4-5.99.3 hard-coded into them, and I'd like the
> >> final one to look like /sw/share/xtal/ccp4-5.99.3 (for example).
> >> Similarly for Debian linux.  Is there a simple way to build in one
> >> directory but use the final install-path for configuring?
> >>
> >> I've tried changing $install_root in the file
> >> cctbx_install_script.csh, but that didn't work.
> >>
> >> Similarly, I noticed the install_paths hard-coded into the dynamic
> >> libraries for cctbx are relative, rather than absolute like the
> >> others, for examle:
> >>
> >> % otool -L cctbx_dmtbx_ext.so
> >> cctbx_dmtbx_ext.so:
> >>          /System/Library/Frameworks/Python.framework/Versions/2.3/
> >> Python (compatibility version 2.3.0, current version 2.3.5)
> >>          lib/libboost_python.dylib (compatibility version 0.0.0,
> >> current version 0.0.0)
> >>          /usr/lib/libSystem.B.dylib (compatibility version 1.0.0,
> >> current version 88.0.0)
> >>          /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0,
> >> current version 7.3.0)
> >>          /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0,
> >> current version 1.0.0)
> >>
> >> Is there a simple way to change that?
> >>
> >>
> >>
> >> All the best,
> >>
> >> Bill
> >>
> >>
> >> William G. Scott
> >>
> >> Associate Professor
> >> Department of Chemistry and Biochemistry
> >> and The Center for the Molecular Biology of RNA
> >> Sinsheimer Laboratories
> >> University of California at Santa Cruz
> >> Santa Cruz, California 95064
> >> USA
> >>
> >>
> >>
> >>
> >> _______________________________________________
> >> cctbxbb mailing list
> >> cctbxbb at phenix-online.org
> >> http://www.phenix-online.org/mailman/listinfo/cctbxbb
> >>
> >
>
>


More information about the cctbxbb mailing list