[Allegro] SVN und Make, Test und Demo mit osdp

Bernhard Eversberg ev at biblio.tu-bs.de
Mi Jun 27 09:38:46 CEST 2012


Am 26.06.2012 16:08, schrieb Thomas Berger:
>
 > ...
> Warum studieren Sie nicht am funktionierenden "avanti" wie so
> etwas "hinzukriegen" ist?
>

Gut, besseres Wissen haben Sie wieder mal überzeugend demonstriert,
und daß es uns daran und überhaupt am Durchblick mangelt. Wir arbeiten
dran, sobald wir dazu kommen.

Jetzt könnte das bessere Machen folgen. Sie haben Schreibrecht, auch
für osdp. Nun zeigen Sie uns und der Community, was ne Harke ist. Oder
wie geht eigentlich OpenSource? (Hatte das eigentlich schon mal
angeregt, erneuere aber gern die Ermunterung dazu.)

Aber ok, morgen ist schon Expertentreff, da bleibt soviel Zeit nicht.
Oder Sie präsentieren da mit CMake o.a. was Bessres, dann ist Schluß
mit dem Schlamassel und allen geholfen.

Um auf jeden Fall was zu haben, was denn doch klappt:
Ihrem Rat folgend, avanti als Beispiel zu studieren, braucht etwas
viel Zeit.  Kollege Oberfell sandte vor einer Weile eine ganz gute
Zusammenfassung wichtiger Schritte:
 
http://sun250.biblio.etc.tu-bs.de/pipermail/allegro/2012-March/035165.html
Und dann war da noch diese Handreichung:
 
http://sun250.biblio.etc.tu-bs.de/pipermail/allegro/2012-January/034765.html
fußend auf
   http://www.lugod.org/presentations/autotools/presentation/autotools.pdf

Dies dann schnell mal eben durchspielend für osdp, mit diesem
Dateienbestand im Ordner osdp: (die daneben noch bereitgestellten
sind hinfällig bzw. nur für Windows-VC)

     Makefile.am
     osdp.cpp
     uif0ger       (nur zum Testen)

und parallel liegenden ac15 und aindex, dort bereits die libraries
libac15.a bzw. libaindex.a, ergibt dann folgende Sequenz:
(Reinschauen in die jeweils entstehenden -->Dateien, man sieht
dann schon worum's geht)

autoscan
   --> configure.scan

mv configure.scan configure.ac

autoheader
   --> autom4te.cache
       config.h.in

vim configure.ac
     Ergaenzung direkt nach AC_INIT:
       AM_INIT_AUTOMAKE
     Ergaenzung unter # Checks for programs
       AC_PROG_RANLIB

aclocal
   --> aclocal.m4
       und Aenderungen an configure.ac

   Dateien NEWS, README, AUTHORS, COPYING und ChangeLog bereitstellen,
   Inhalt egal, sonst Fehlermeldung bei:

automake --add-missing --copy
   --> INSTALL

autoconf
   --> configure

automake
   --> Makefile.in

./configure
   --> config.status
   --> config.log
   --> config.h
   --> stamp-h1
   --> Makefile

Das letzte ist es, was wir die ganze Zeit wollen.

   Nun in Makefile (warum, führt jetzt zu weit) die Zeile
INCLUDES = -I$(top_srcdir)/ac15 -I$(top_srcdir)/aindex
   ersetzen durch
INCLUDES = -I../ac15 -I../aindex

Dann

make

und es entsteht das Executable  osdp
Es ist auffällig groß, denn es enthält Debugging-Sachen. Die wird man
los mit

   strip osdp

Und nun haengen Sie noch einen Ordner  demo  mit der DemoBank dran und
schaffen sich dieses File  test.bef:

OPTIONS
-b cat
-d demo
-r 3

COMMANDS
find shakespeare
keys

Dieses Befehlsskript übergibt man osdp mit folgendem Befehl:

./osdp <test.bef

Der Befehl "find shakespeare" findet über Register 3 den ersten
Eintrag, der mit "shakespeare" beginnt und lädt den Satz. Der
Befehl "keys" wirft seine Schlüssel aus. Welche Befehle osdp
sonst noch kennt, steht in osdp.cpp kommentiert.

B.E.






Mehr Informationen über die Mailingliste Allegro