[BioLib-dev] Merging biopp into main
Pjotr Prins
pjotr.public14 at thebird.nl
Sat Aug 1 08:55:47 UTC 2009
Hi Adam,
Thanks for moving the SWIG files into src/mappings/swig/python/biopp.
>From your BLOG I gather you have a building Bio++ map for Python. That
is cool - I would like to merge it into the next release of biolib. We
need to get it to build it into biolib automatically with CMake.
The first step is to compile the biopp C++ library from source in
biolib.
I have checked out your branch into a clean tree:
git clone git://github.com/adamsmith/biolib.git biolib-biopp
cd biolib-biopp/
git checkout --track -b biopp origin/biopp
git pull
git submodule init
git submodule update # fetching biopp into ./contrib/biopp
cd ./src/clibs/biopp/src
here I should be able to do:
cmake .
make
to build the biopp.so into ../build. I fixed that in earlier days,
but you never merged my changes into your tree. So let's start from
this point. One of my notes says:
== Building the C++ libraries ==
The control files for building the Bio++ C libraries are in
./src/clibs/biopp/
cd ./src/clibs/biopp/src/
rm CMakeCache.txt ; cmake . ; make
should build a shared library in ./src/clibs/biopp/build. This is the
library we link against. (Note: As Bio++ has namespaces we can build one
single .so file). It is named something like
libbiolib_biopp-0.0.5.so, where the version number reflects the
biolib repository VERSION.
== Continuing... ==
So I have updated CMakeLists.txt and files.txt in my biopp_fix branch.
cd ./src/clibs/biopp/src/
rm CMakeCache.txt ; cmake . ; make
shows:
STATUS,"FindMap.cmake"
PREFIX: /usr/local
CMAKE_INSTALL_PREFIX=/usr/local
MAP_ROOT=../../../..
MAP_CLIBS_PATH=../../../../src/clibs
MAP_PROJECTNAME=biolib
MAP_VERSION=0.0.5
-- ClibMacros.cmake
CONTRIB_PATH=
LIBNAME=biolib_biopp-0.0.5
BUILDDIR=../../../../src/clibs/biopp/build
-- Configuring done
-- Generating done
-- Build files have been written to: /export/users/local/wrk/git/opensource/biolib-biopp/src/clibs/biopp/src
Scanning dependencies of target biolib_biopp-0.0.5
[ 6%] Building CXX object CMakeFiles/biolib_biopp-0.0.5.dir/home/wrk/git/opensource/biolib-biopp/contrib/biopp/utils/Utils/ApplicationTools.cpp.o
[ 13%] Building CXX object CMakeFiles/biolib_biopp-0.0.5.dir/home/wrk/git/opensource/biolib-biopp/contrib/biopp/utils/Utils/AttributesTools.cpp.o
[ 20%] Building CXX object CMakeFiles/biolib_biopp-0.0.5.dir/home/wrk/git/opensource/biolib-biopp/contrib/biopp/utils/Utils/ColorTools.cpp.o
(etc)
Linking CXX shared library /export/users/local/wrk/git/opensource/biolib-biopp/src/clibs/biopp/build/libbiolib_biopp-0.0.5.so
[100%] Built target biolib_biopp-0.0.5
Can you repeat this feat by pulling from my branch. First add my remote
repository:
git remote add pjotr git://github.com/pjotrp/biolib.git
# update branch, probably best to checkout a temporary one
git checkout -b biopp_fix
git pull pjotr biopp_fix
# check changes
git log # (or use gitk)
# good? back to your development branch
git checkout biopp
# merge in my change
git merge biopp_fix
# did it work? Yes. Email and continue hacking...
# push to your github account
If this is successful - I can see the patch on your github tree - we can go to
the next step of integration.
Pj.
More information about the BioLib-dev
mailing list