Hi Elmar
On Thu, Sep 24, 2020 at 06:17:11PM -0600, Elmer Pruesse wrote:
> I think I can devote some time to this now. What do you need from me to
> proceed?
>
> SINA uses three things from ARB (as far as I remember):
> - The database (libarbdb.so and libcore.so)
> - The PT server client (PROBE_COM/client.a)
> - Some Code for parsing secondary structure (SL/HELIX/HELIX.a)
>
> The database lib is required.
I think / hope all this is implemented in
https://salsa.debian.org/med-team/libarb
> If I didn’t already, I can modify the build system to allow not using the
> two static libraries. That will lead to reduced feature set though. But for
> typical cases should be ok.
Do you feel able to build a package from there and install it to test
whether SINA builds and runs properly? If not I can upload the package
to some location for your comfort. Please be so kind to test it before
I go on asking upstream to fix the license for all the code that is
required.
Kind regards
Andreas.
> > On Sep 24, 2020, at 7:50 AM, Andreas Tille <[email protected]> wrote:
> >
> > Hi Elmar,
> >
> > are you interested that we are working together on Sina packaging for
> > Debian. It was more than one year ago that I was working really hard to
> > extract the part from arb that could be a future libarb. I'm waiting
> > for confirmation that this is all code that is sufficient to build Sina.
> > It would even help if you confirm that you are overworked / not
> > interested so we would stop waiting and start doing something again.
> >
> > Please let me know if you need further information.
> >
> > Kind regards
> >
> > Andreas.
> >
> >> On Thu, Nov 14, 2019 at 09:13:03AM +0100, Andreas Tille wrote:
> >> Hi again,
> >>
> >> I wonder whether you understood that we are waiting for some signal of
> >> yours whether the attempt to package libarb works with sina. So far we
> >> are running into trouble and I'm just waiting for your input how to get
> >> sina build with libarb. Further work on the libarb package is stalled
> >> until you will answer the mail below.
> >>
> >> Kind regards
> >>
> >> Andreas.
> >>
> >>> On Wed, Jul 31, 2019 at 02:25:36PM +0200, Andreas Tille wrote:
> >>> Ping again.
> >>> I do not see any sense to continue with libarb packaging as long
> >>> as there is no way to build sina smoothly with what we have.
> >>>
> >>> So can you please comment (in public on list) about the issue
> >>>
> >>> /usr/bin/ld: src/sina.o: undefined reference to symbol
> >>> '_ZN5boost15program_options29options_description_easy_initclEPKcS3_'
> >>>
> >>>
> >>> /usr/bin/ld:
> >>> //usr/lib/x86_64-linux-gnu/libboost_program_options.so.1.67.0: error
> >>> adding symbols: DSO missing from command line
> >>>
> >>> Kind regards
> >>> Andreas.
> >>>
> >>> On Wed, Jul 10, 2019 at 10:25:54PM +0200, Andreas Tille wrote:
> >>>> Ping?
> >>>>
> >>>> On Thu, Jun 20, 2019 at 10:19:34PM +0200, Andreas Tille wrote:
> >>>>> Hi Elmar,
> >>>>>
> >>>>> On Thu, Jun 20, 2019 at 10:41:10AM -0600, Elmar Pruesse wrote:
> >>>>>>>>> make lib/arb_tcp.dat
> >>>>>>>> This target does not exist.
> >>>>>>
> >>>>>> Just
> >>>>>>
> >>>>>> cp $SRCDIR/lib/arb_tcp_org.dat $DESTDIR/.../lib/arb_tcp.dat
> >>>>>>
> >>>>>> The Makefile in lib/ just does a cp as well. No processsing.
> >>>>>
> >>>>> Sure. My point was that before I repackaged the libarb tarball not even
> >>>>> lib/arb_tcp_org.dat was included. But now I changed the Files-Excluded
> >>>>> rules and its now not removed any more. So that's a solved problem.
> >>>>>
> >>>>>> Alternatively, just put this data into the file:
> >>>>>>
> >>>>>>
> >>>>>> ----
> >>>>>>
> >>>>>> ARB_TCP_DAT_VERSION 2
> >>>>>> ARB_DB_SERVER :/tmp/arb_db_$(USER)_$(ARB_PID)
> >>>>>> ARB_NAME_SERVER localhost:3020 arb_name_server
> >>>>>> -d$(ARBHOME)/lib/nas/names.dat
> >>>>>> ARB_NAME_SERVER_START localhost:3021 arb_name_server
> >>>>>> -d$(ARBHOME)/lib/nas/names_start.dat -fstart=1
> >>>>>>
> >>>>>> ARB_PT_SERVER0 :$(HOME)/.arb_pts/$(USER)1.socket
> >>>>>> arb_pt_server
> >>>>>> -D$(HOME)/.arb_pts/$(USER)1.arb
> >>>>>>
> >>>>>> ARB_PT_SERVER1 :$(HOME)/.arb_pts/$(USER)1.socket arb_pt_server
> >>>>>> -D$(HOME)/.arb_pts/$(USER)2.arb
> >>>>>>
> >>>>>> ARB_PT_SERVER2 :$(HOME)/.arb_pts/$(USER)1.socket arb_pt_server
> >>>>>> -D$(HOME)/.arb_pts/$(USER)3.arb ----
> >>>>>> ----
> >>>>>
> >>>>> I'll keep this hint in Debian Med mailing list archive in case there
> >>>>> will be issues with the license from ARB upstream.
> >>>>>
> >>>>>>>>> arb-pt-server.install:
> >>>>>>>>>
> >>>>>>>>> bin/arb_pt_server usr/bin
> >>>>>>>>>
> >>>>>>>>> lib/arb_tcp.dat /etc/arb
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>> arb-pt-server.links:
> >>>>>>>>>
> >>>>>>>>> etc/arb/arb_tcp.dat usr/lib/${DEB_HOST_MULTIARCH}/arb
> >>>>>>>> Do you think this link is only needed inside the arb-pt-server
> >>>>>>>> package
> >>>>>>>> or is it better in libarb package? (I implemented the latter in the
> >>>>>>>> latest packages.)
> >>>>>>
> >>>>>> It is needed for arb_pt_server and arb_name_server. It is parsed by
> >>>>>> libARBDB
> >>>>>> and the stuff in SERVERCONTROL. Could go in either.
> >>>>>
> >>>>> OK, may be I'll leave it in libarb.
> >>>>>
> >>>>>> Since I'd prefer as much as possible tests I added the package.
> >>>>>>>> Regarding SINA packaging: Do you think a Recommends: arb-pt-server
> >>>>>>>> or a
> >>>>>>>> Suggests would be appropriate?
> >>>>>>
> >>>>>> Yes, sounds good. Either will do. Guess 'suggests' is enough. Mostly,
> >>>>>> you'd
> >>>>>> want it constrained to the right version if it does get installed by
> >>>>>> the
> >>>>>> user.
> >>>>>
> >>>>> I added it as Suggests. What would be the "right version"?
> >>>>> (Feel free to commit what you consider correct - that's probably faster
> >>>>> than
> >>>>> you explain here in detail and I do it according to your advise.)
> >>>>>
> >>>>>>>> when using the Debian packaged spdlog (version 1.3.1). In the
> >>>>>>>> packaging
> >>>>>>>> we have removed the spdlog code copy (as per Debian policy) and try
> >>>>>>>> to
> >>>>>>>> link against the Debian packaged version. In several other projects I
> >>>>>>>> realised problems with this approach and it seems spdlog is a moving
> >>>>>>>> target. Do you think you can adapt SINA to latest spdlog or should we
> >>>>>>>> rather stick to the code copy?
> >>>>>>
> >>>>>> Use the vendored one if that is permissible. I have patched it to
> >>>>>> include a
> >>>>>> progress monitor, but the patch was rejected upstream. See
> >>>>>> https://github.com/gabime/spdlog/issues/1030#issuecomment-499979592. I
> >>>>>> will
> >>>>>> have to turn it into a separate package. Problem is that I would
> >>>>>> want/need
> >>>>>> to have an API change in the upstream spdlog, so I'll have to do some
> >>>>>> copy
> >>>>>> paste coding, sadly, to do the separate package. I'm planning to, and I
> >>>>>> could expedite it if Debian policy requires it, but it would take me a
> >>>>>> week
> >>>>>> or so to fit it in.
> >>>>>
> >>>>> Well, "require" is to much - there are packages in the pool which do
> >>>>> conflict with this rule (and some of these are actually pinned to some
> >>>>> spdlog versions :-(). For the moment I re-included spdlog into the Git
> >>>>> repository since we want to make some progress to test linking against
> >>>>> libarb. Until this is sorted out and all licensing issues which I
> >>>>> expect due to the additional files we need to build libarb are solved we
> >>>>> have time to sort out the spdlog issue. If you could somehow settle
> >>>>> with
> >>>>> the official code that would be helpful in any case.
> >>>>>
> >>>>> With the latest push of the sina packaging I get:
> >>>>>
> >>>>> ...
> >>>>> libtool: link: (cd "src/.libs" && rm -f "libsina.so.0" && ln -s
> >>>>> "libsina.so.0.0.0" "libsina.so.0")
> >>>>> libtool: link: (cd "src/.libs" && rm -f "libsina.so" && ln -s
> >>>>> "libsina.so.0.0.0" "libsina.so")
> >>>>> libtool: link: ar cru src/.libs/libsina.a src/align.o
> >>>>> src/aligned_base.o src/alignment_stats.o src/cseq.o
> >>>>> src/cseq_comparator.o src/famfinder.o src/mseq.o src/pseq.o
> >>>>> src/query_arb.o src/query_pt.o src/rw_fasta.o src/rw_arb.o src/log.o
> >>>>> src/search.o src/search_filter.o src/tray.o src/kmer_search.o
> >>>>> ar: `u' modifier ignored since `D' is the default (see `U')
> >>>>> libtool: link: ranlib src/.libs/libsina.a
> >>>>> libtool: link: ( cd "src/.libs" && rm -f "libsina.la" && ln -s
> >>>>> "../libsina.la" "libsina.la" )
> >>>>> /bin/bash ./libtool --tag=CXX --mode=link g++ -g -O2
> >>>>> -fdebug-prefix-map=/build/sina-1.6.0=. -fstack-protector-strong
> >>>>> -Wformat -Werror=format-security -g -O2
> >>>>> -fdebug-prefix-map=/build/sina-1.6.0=. -fstack-protector-strong
> >>>>> -Wformat -Werror=format-security -W -L/usr/lib/x86_64-linux-gnu
> >>>>> -L/usr/lib/x86_64-linux-gnu/arb/lib -Wl,-rpath
> >>>>> -Wl,/usr/lib/x86_64-linux-gnu/arb/lib -Wl,-z,relro -o src/sina
> >>>>> src/sina.o src/libsina.la
> >>>>> /usr/lib/x86_64-linux-gnu/arb/PROBE_COM/client.a
> >>>>> /usr/lib/x86_64-linux-gnu/arb/PROBE_COM/common.a -lARBDB -lCORE
> >>>>> -lglib-2.0 /usr/lib/x86_64-linux-gnu/arb/SL/HELIX/HELIX.a -lARBDB
> >>>>> -lCORE -lglib-2.0 -lARBDB -lCORE -lglib-2.0 -ldl -lrt
> >>>>> libtool: link: g++ -g -O2 -fdebug-prefix-map=/build/sina-1.6.0=.
> >>>>> -fstack-protector-strong -Wformat -Werror=format-security -g -O2
> >>>>> -fdebug-prefix-map=/build/sina-1.6.0=. -fstack-protector-strong
> >>>>> -Wformat -Werror=format-security -W -Wl,-rpath
> >>>>> -Wl,/usr/lib/x86_64-linux-gnu/arb/lib -Wl,-z -Wl,relro -o
> >>>>> src/.libs/sina src/sina.o -L/usr/lib/x86_64-linux-gnu
> >>>>> -L/usr/lib/x86_64-linux-gnu/arb/lib src/.libs/libsina.so
> >>>>> /usr/lib/x86_64-linux-gnu/arb/PROBE_COM/client.a
> >>>>> /usr/lib/x86_64-linux-gnu/arb/PROBE_COM/common.a
> >>>>> /usr/lib/x86_64-linux-gnu/arb/SL/HELIX/HELIX.a -lARBDB -lCORE
> >>>>> -lglib-2.0 -ldl -lrt
> >>>>> /usr/bin/ld: src/sina.o: undefined reference to symbol
> >>>>> '_ZN5boost15program_options29options_description_easy_initclEPKcS3_'
> >>>>> /usr/bin/ld:
> >>>>> //usr/lib/x86_64-linux-gnu/libboost_program_options.so.1.67.0: error
> >>>>> adding symbols: DSO missing from command line
> >>>>> collect2: error: ld returned 1 exit status
> >>>>> make[2]: *** [Makefile:1120: src/sina] Error 1
> >>>>>
> >>>>>
> >>>>> Any idea how to fix this?
> >>>>>
> >>>>> Kind regards
> >>>>>
> >>>>> Andreas.
> >>>>>
> >>>>> --
> >>>>> http://fam-tille.de
> >>>>>
> >>>>>
> >>>>
> >>>> --
> >>>> http://fam-tille.de
> >>>
> >>> --
> >>> http://fam-tille.de
> >>
> >> --
> >> http://fam-tille.de
> >>
> >>
> >
> > --
> > http://fam-tille.de
>
>
--
http://fam-tille.de