Bug report

Dirk Hohndel dirk at hohndel.org
Wed Oct 7 05:30:10 PDT 2015


On Wed, Oct 07, 2015 at 02:09:18PM +0200, Guido Lerch wrote:
> 2015-10-07 13:42 GMT+02:00 Lubomir I. Ivanov <neolit123 at gmail.com>:
> 
> > On 7 October 2015 at 14:39, Guido Lerch <guido.lerch at gmail.com> wrote:
> > >
> > >
> > > 2015-10-07 13:27 GMT+02:00 Dirk Hohndel <dirk at hohndel.org>:
> > >>
> > >> On Wed, Oct 07, 2015 at 01:23:12PM +0200, Guido Lerch wrote:
> > >> > All,
> > >> > Tried to get a Track account but got rejected :-(
> > >>
> > >> Interesting. Can you tell me more what you tried and what happened? We
> > >> have people create trac accounts several times a week and it turns to
> > work
> > >> quite well - we do a minimal captcha to get rid of some of the spam
> > bots,
> > >> but it should reject you :-)
> > >>
> > >> > Printing on a MAC iOS 10.9.5 does not print the dive meta data, the
> > >> > profiles are printed but
> > >> > in a really bad quality.
> > >> >
> > >> > Printed an example to a PDF, attached.
> > >>
> > >> Is this built from source or with the Beta 3 / latest daily build?
> > >> The reason I'm asking is that there is a bit of black magic involved to
> > >> really get the bundle to work exactly as intended and it can easily pick
> > >> up incorrect libraries if you aren't careful...
> > >
> > >
> > > With Beta-3 is works ! Now is the question on how I can reproducible
> > build
> > > from
> > > source using the correct libraries.
> > > Next test is to use the build script.
> > >>
> >
> > which Qt version are you using to build locally?
> > we encourage 5.5, or the latest possible...
> >
> 
> I am using 5.5 but frankly have tons of questions and ask myself if I have
> set this up properly - I am still a newbie to this.
> 
> For example:
> - I am getting messages that the build is done in the source tree and that
> that is not recommended, however build.sh does build in the source tree
> itself ...

No it doesn't and no you really shouldn't build in the source tree.

build.sh does this:

cd $SRC/subsurface
mkdir -p build
cd build
export CMAKE_PREFIX_PATH=$INSTALL_ROOT/lib/cmake
cmake -DCMAKE_BUILD_TYPE=Debug .. \
        -DLIBGIT2_INCLUDE_DIR=$INSTALL_ROOT/include \
        -DLIBGIT2_LIBRARIES=$INSTALL_ROOT/lib/libgit2.$SH_LIB_EXT \
        -DLIBDIVECOMPUTER_INCLUDE_DIR=$INSTALL_ROOT/include \
        -DLIBDIVECOMPUTER_LIBRARIES=$INSTALL_ROOT/lib/libdivecomputer.a \
        -DMARBLE_INCLUDE_DIR=$INSTALL_ROOT/include \
        -DMARBLE_LIBRARIES=$INSTALL_ROOT/lib/libssrfmarblewidget.$SH_LIB_EXT \
        -DNO_PRINTING=OFF \
        -DUSE_LIBGIT23_API=1

if [ $PLATFORM = Darwin ] ; then
        rm -rf Subsurface.app
fi

LIBRARY_PATH=$INSTALL_ROOT/lib make -j4

if [ $PLATFORM = Darwin ] ; then
        LIBRARY_PATH=$INSTALL_ROOT/lib make install
fi

it creates subsurface/build and then cds into that directory and calls
cmake pointing to the sources in the parent directory.

And on Darwin (i.e., Mac) it always runs make install so it builds a
(mostly) valid bundle.

> - Trying to move the build location gives issues as the makefiles and the
> cmake stuff is not in the new location ...

You can easily build in a different directory. Just do a similar
invocation of cmake that references the source directory

> As said I am new and somehow hesitant to ask those questions as the cracks
> might think I am a complete dummy ...

We all started there somewhere (well, OK, Linus didn't, he was always
brilliant). A community can't grow and thrive if it can't bring in new
people and make them feel comfortable.

Keep asking. As long as you listen and try, we'll keep answering :-)
And just to avoid email based misunderstanding as even with a smiley it's
often unclear what I mean... you are doing great. You are extremely
receptive to feedback and suggestions. We're happy to have you here.
And I have great hope that once you are more comfortable you will help us
get our automated testing to be much more useful.

> So far I always got stuff to work but I am not confident at all that
> everything is setup 100% correctly, hence I might
> see weird behaviour like marble woking one pull but not at the next or
> printing works with Beta-3 but not when building
> with the last master.

Yes, building in the sources is something I should simply prohibit. Things
simply are set up for out of tree build and I don't think anyone ever
tests in tree builds (except, apparently, you). So just don't do this.

Fundamentally that's why we created build.sh. In theory it should allow
you to run a simple script and get a consistent, sane setup. Why that
didn't work in your case is something I'd love to figure out so we can
make the script more robust and make it easier for the next person who
wants to get involved (and I may have talked a rock star developer into
joining the Subsurface team... we'll see).

/D


More information about the subsurface mailing list