Makefle für Generierung von pdfs aus tex. Generische Regeln. Schleifen: Operatoren (wildcard, basename...)

Ähnliche Dokumente
15. Werkzeuge für das Bau- Management

45. Werkzeuge für das Bau- Management

Kurzanleitung zu XML2DB

ANT. Kurzvortrag von Manuel Schulze.

Das Build-Tool ANT ETIS SS05

Wie konfiguiriert man Eclipse (mit oder ohne Plugin) Erich Ehses

Ant - das Java Build-Tool

Eclipse und Java Einheit 06: Building Eclipse Projete mit Ant

JCoverage. Uni Kassel Projektarbeit Software Engineering Markus Pilsl & Marko Medved

Das Build Tool Ant. Sebastian Mancke,

Version 0.3. Installation von MinGW und Eclipse CDT

Einführung in die Informatik Tools

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Software-Engineering Grundlagen des Software-Engineering

Installation DataExpert Paynet-Adapter (SIX)

Kompilieren und Linken

INHALT 1. INSTALLATION DES V-MODELL XT UNTER WINDOWS 7 2. INSTALLATION DES V-MODELL XT UNTER WINDOWS VISTA

Eprog Starthilfe. 5. Oktober Einleitung 2

Konzept Projekt Lisa

Karten für MapSource (neu: BaseCamp) und Garmin-GPS-Geräte

Der einfache Weg zum CFX-Demokonto

Softwarepraktikum: Einführung in Makefiles

Anleitung zur Installation und Verwendung von eclipseuml 2.1.0

Internet Explorer Version 6

SWT II Projekt. Chat - Anwendung. Pflichtenheft 2000 SWT

INSTALLATION DES V-MODELL XT UNTER WINDOWS VISTA

macs Support Ticket System

Support-Tipp Mai Release Management in Altium Designer

Bedienerhandbuch Toleranztabellen Version 1.2.x. Copyright Hexagon Metrology

Übung: Verwendung von Java-Threads

Konfigurationsmanagement

Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand Copyright

IDA ICE - Konvertieren und Importieren von mit TRY_Effekte_aufpraegen.exe erzeugten Datensätzen

Software Qualität Übung 1

robotron*e count robotron*e sales robotron*e collect Anmeldung Webkomponente Anwenderdokumentation Version: 2.0 Stand:

PDF-Dateien erstellen mit edocprinter PDF Pro

Leitfaden zur Nutzung von binder CryptShare

Programmentwicklung mit C++ (unter Unix/Linux)

Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren

Nuetzlicher Kleinkram

Das Handbuch zu KAppTemplate. Anne-Marie Mahfouf Übersetzung: Burkhard Lück

PRAXISMANAGEMENT FÜR DIE ZAHNARZTPRAXIS, MKG - CHIRURGIE UND KLINIK PRO X DENT MKG ZMK UMSTELLUNG DER INSTALLATION AUF NETZLAUFWERK

ARCWAY Cockpit. Professional Upgrade. von 3.0 auf 3.1

Beschreibung und Bedienungsanleitung. Inhaltsverzeichnis: Abbildungsverzeichnis: Werkzeug für verschlüsselte bpks. Dipl.-Ing.

Wo finde ich die Software? - Jedem ProLiant Server liegt eine Management CD bei. - Über die Internetseite

Informatik I Tutorial

COSIDNS 2 ISPconfig3. Version 0.1 ( )

Software-Engineering und Optimierungsanwendungen in der Thermodynamik

Informationen zur Verwendung von Visual Studio und cmake

Update Messerli MySQL auf Linux

Installation Messerli MySQL auf Linux

Verwenden von Adobe LiveCycle ES3 Connector für Microsoft SharePoint

Einführung in TexMaker

Anleitung Captain Logfex 2013

Installations Guide für YAJSW und DTLDAP

1 Installation QTrans V2.0 unter Windows NT4

SFTP SCP - Synology Wiki

Ticketing mit JIRA Kurzanleitung

Smap3D PDM 10. Installation. Stand-Alone-Migration-Analyzer

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

ATB Ausbildung Technische Berufe Ausbildungszentrum Klybeck

Comtarsia SignOn Familie

Workshop: Eigenes Image ohne VMware-Programme erstellen

Mehrere PDF-Dokumente zu einem zusammenfügen

Anleitung zum erstellen einer PDF-Datei aus Microsoft Word

Neues Modul für individuelle Anlagen. Änderung bei den Postleitzahl-Mutationen

Neuer Releasestand Finanzbuchhaltung DAM-EDV E Inhaltsverzeichnis. 1. Neuerungen Schnittstelle Telebanking mit IBAN und BIC...

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein:

Systemvoraussetzung < zurück weiter >

Inhalt. meliarts. 1. Allgemeine Informationen Administration Aufruf Das Kontextmenü Vorlagen...

LSF-Anleitung für Studierende

Daten-Synchronisation zwischen Mozilla Thunderbird (Lightning) / Mozilla Sunbird und dem ZDV Webmailer

Die Dateiablage Der Weg zur Dateiablage

Buddy - Algorithmus Handbuch für Endnutzer Stand

Whitepaper. Produkt: combit address manager STAMPIT der Deutschen Post nutzen. combit GmbH Untere Laube Konstanz

Installation von MailON2!

Hinweise zum elektronischen Meldeformular

Kurzanleitung zur Erweiterung der htdig

SHAREPOINT Unterschiede zwischen SharePoint 2010 & 2013

Kommunikationsdaten Spielberechtigungsliste. Speicherpfad/Dokument: _DFBnet_Kommunikationsdaten_Spielberechtigungsliste_Freigabemitteilung_4.

Hilfe Bearbeitung von Rahmenleistungsverzeichnissen

Materialupload. Verwalten von Unterrichtsmaterialien. über das STiNE-Webportal. Universität Hamburg Tor zur Welt der Wissenschaft

Online-Prüfungs-ABC. ABC Vertriebsberatung GmbH Bahnhofstraße Neckargemünd

ITF2XML. Transferservice. Version 1.0. infogrips GmbH, Zürich client10.doc, Revision 1.1. Tel.: 01 / Fax: 01 /

Kurzanleitung. Toolbox. T_xls_Import

ESB - Elektronischer Service Bericht

Dieses Dokument soll dem Administrator helfen, die ENiQ-Software als Client auf dem Zielrechner zu installieren und zu konfigurieren.

WebService in Java SE und EE

falego das Fallmanagement für ISO 9001ff zertifizierte Startercenter NRW - Version

Step by Step Webserver unter Windows Server von Christian Bartl

SOFTWARE FÜR PRG-APPLIKATIONEN

KURZANLEITUNG DUPLICITY MIT CLOUD OBJECT STORAGE

ecaros2 Installer procar informatik AG 1 Stand: FS 09/2012 Eschenweg Weiterstadt

Anwenderdokumentation PersoSim

BitDefender Client Security Kurzanleitung

Installation OMNIKEY 3121 USB

LIP Formulare Anleitung zum Speichern, Öffnen und Drucken

Lokale Installation von DotNetNuke 4 ohne IIS

Transkript:

45. Werkzeuge für das Bau- Management 45.1 Bau-Management- Werkzeuge Prof. Dr. rer. nat. Uwe Aßmann Institut für Software- und Multimediatechnik Lehrstuhl Softwaretechnologie Fakultät für Informatik TU Dresden http://st.inf.tu-dresden.de Version 09-0.4, 28.01.10 1) Baumanagement 2) Das Baumanagement- System von GNU 3) Aufgabenmanagement (Fehler, Anforderungen) Kommando: info automake SEW, Prof. Uwe Aßmann 1 SEW, Prof. Uwe Aßmann 2 Aufbau realer e mit statischem Linken Make Teilprojekt 1 Teilprojekt 2... Programm 1 (main) Programm 2 (main)... Make ist ein Bauprogramm, das abhängige dateien (targets) aus Quelldateien (sources, Originaldateien) durch Ausführen eines Kommandos erzeugt. Stuart Feldman, 1977, als Teil von UNIX http://de.wikipedia.org/wiki/make Abhängigkeiten werden in Bau-Spezifkationen (makefles) spezifziert mit Hilfe von Abhängigkeiten und Aktionen: B.o: B.c C.h D.h // A ist abhängig von B, C und D Quelltext 1 main: modul1.c Compiler Objektmodul 1 modul1.o Linker Quelltext 2 modul2.c Objektmodul 2 modul2.o Quelltext 3 modul3.c Lader Quelltext n projektspez. Makro Objektmodul 3 modul3.o Maschine System-Makro 1 System-Makro-Bibliothek Systembibliothek. gcc -c B.c // Aktion, um B.o aus B.c zu generieren Generische Regel: Falls (datei älter als eine der Quelldateien) führe die Aktion aus, d.h. regeneriere Im Wesentlichen ist Make ein Regelinterpreter mit lazy-evaluation für die Regeln (träge Auswertung) lazy funktionale Sprache bieten die Funktionalität umsonst an Prof. U. Aßmann, SEW 3 Prof. U. Aßmann, SEW 4

Makefle für Generierung von pdfs aus tex Generische Regeln LATEX=latex MAIN=document.tex SOURCES=$(MAIN) fgure.tex PDFLATEX=pdfatex G=gen tex_it: $(SOURCES) $(LATEX) $(MAIN) && cp $(MAIN).dvi $(MAIN).dvi~ dvips -Ppdf -o $G/$(MAIN).ps $(MAIN) ps2pdf $G/$(MAIN).ps $G/%.ps: %.pdf pdftops $< $@ psnup -2 $@ > ${@:.ps=}-2p.ps psselect -r ${@:.ps=}-2p.ps psnup -2 psselect -r > ${@:.ps=}- 4p.ps Prof. U. Aßmann, SEW 5 Prof. U. Aßmann, SEW 6 Operatoren (wildcard, basename...) Schleifen: BIBS=$(wildcard *.bib) MAIN=$(basename $(shell grep -l documentclass *.tex)) # #### Replacement Operatoren: ####### BIBHTMLS=${BIBS:%.bib=$G/%-bib.html} architectures: links: for j in $(ARCHITECTURES) ; do mkdir $$j ; done; for j in $(ARCHITECTURES) ; do cd $$j; for i in $(SOURCES) ; do ln -s../$$i. ; done; cd..; done; cleanlinks: for j in $(ARCHITECTURES) ; do cd $$j; for i in $(SOURCES) ; do mv $$i $(HOME)/backup; done; cd..; done; for j in $(ARCHITECTURES) ; do cd $$j; rm -f *.c *.cc *.C; cd..; done; Prof. U. Aßmann, SEW 7 Prof. U. Aßmann, SEW 8

Ant Bauwerkzeug für Java Ant (2) Zur Build-Beschreibung zusammenhängender Komponenten werden anstatt Make-Files durch Ant Beschreibungen für s eingesetzt, die ein bestimmtes realisieren. Ant (Another neat tool) ist ein Framework zur Automatisierung des Build-Prozesses aus Komponenten. Ein Ant-Buildfi le build.xml enthält genau ein, ein bis mehrere e (Targets), die Aspekte des es (z.b. Dokumentation erstellen, Releaseoder Debug-Version erstellen ) beschreiben sowie s meist in Java zur Umsetzung der e. Es unterstützt Wildcards und Filesets. Ant stellt nur das Framework zur Organisation und Verwaltung der e und e dar, die weitergehende Logik (z.b. inkrementelles Compilieren) steht in der Verantwortung der s. Quelle: [ 7, S. 142 ff. ] Ant XML s (3) Prof. U. Aßmann, SEW 9 Es werden zahlreiche vorgefertigte s mitgeliefert, z.b. für Übersetzen (javac, JspC) Archivieren (jar, zip, rpm) Dokumentation (Javadoc) Dateipfl ege (Checksum, Copy, Delete, Move ) Test (Junit) ANT kann mit selbst geschriebenen s (Java-Klassen) erweitert werden. Aufruf: ant [options] [target] target bestimmt dabei, welches im Buildfi le aufgeführte realisiert werden soll, falls der Parameter weggelassen wird, wird das default-target verwendet. Beispielaufrufe: ant compile compile umsetzen ant clean compile e clean und compile umsetzen ant -buildfile test.xml Buildfi le test.xml verwenden, default- Buildfi les werden im XML-Format erstellt, damit einfache Weiterverarbeitung durch Werkzeuge möglich. Maven Prof. U. Aßmann, SEW 10 Ableitungsbeziehungen der Komponenten untereinander bilden einen Abhängigkeitsgraphen. Pfeil A <-- B bedeutet A ist abgeleitet aus B. Abhängigkeiten werden Javac automatisch mitgeteilt und berücksichtigt. grammatik.o grammatik.in duden wörterbuch.o wörterbuch.in <project name= duden" default= compile" basedir="./.."> <target name="init"> <mkdir dir="${output}"/> <mkdir dir="${report}"/> </target> <target name="compile" depends="init"> <javac srcdir="${src}/duden" destdir="${output}"> </javac> </target> </project> Quelle: [ 7, S. 127 ff. ] Prof. U. Aßmann, SEW 11 Prof. U. Aßmann, SEW 12

45.2 Das Baumanagementsystem von GNU Kommando: info automake confgure http://www.gnu.org/software/autoconf/ confgure ist ein Shellskript, ein Generator für Bau-Spezifkationen (Makefles) untersucht die Maschine, ob bestimmte Bibliotheken vorhanden sind. in welcher Variante sie vorhanden sind Erzeugt parametrisierte Aufrufe an C-Übersetzer und andere Werkzeuge. durch das Setzen von Variablen (compilation switches), die Plattformabhängigkeiten ausdrücken (für Makefles und C/C++-Programme confgure sorgt für Portabilität der GNU-Programme Makefile.in Ungebundene Variablen C-Header config.h SEW, Prof. Uwe Aßmann 13 Maschine configure status file config.log logfile config.log Belegte Variablen Makefile Prof. U. Aßmann, SEW 14 Installation mit confgure und make autoconf unzip <package>./confgure // Untersucht Maschine. Hinterlässt Makefle, confg.log, confg.status, confg.h./make // baut das System./make check // Prüft, ob alles gutging./make install // installiert das Programm vom lokalen Dir in ein globales./make uninstall // deinstalliert das Programm Prof. U. Aßmann, SEW 15 http://www.gnu.org/software/autoconf/ Autoconf generiert confgure-skripte aus M4-Präprozessorskripten, d.h. M4-Makros (wie Funktionen aufzurufen) die Makros erzeugen Abschnitte des confgure-skriptes Autoconf Makroarchiv: http://ac-archive.sourceforge.net/ Mögliche Plattformen configure-macro- Bibliothek in M4 autoconf configure.in (M4-Skript) Belegte Variablen configure Expandierte Macros Prof. U. Aßmann, SEW 16

M4-Makros für Java-Entwicklung Autoproject http://ac-archive.sourceforge.net ist ein, das M4-Makros für die Erzeugung von confgure-skripten sammelt Zum Beispiel http://ac-archive.sourceforge.net/ac-archive/ac_try_run_javac.html: ac_check_class (ac-archive) // prüft, ob Klasse vorhanden ac_check_junit (ac-archive) // prüft, ob junit vorhanden ac_check_rqrd_class (ac-archive) // etc. ac_java_options (ac-archive) ac_prog_jar (ac-archive) ac_prog_java (ac-archive) ac_prog_java_cc (ac-archive) ac_prog_java_works (ac-archive) ac_prog_javac (ac-archive) ac_prog_javac_works (ac-archive) ac_prog_javadoc (ac-archive) ac_prog_javah (ac-archive) ac_try_compile_java (ac-archive) ac_try_run_javac (ac-archive) Prof. U. Aßmann, SEW 17 http://packages.debian.org/unstable/devel/autoproject autoproject initialisiert in einem leeren Directory ein GNUkonformantes installierbar auf vielen Plattformen (deployable) mit Hilfe des Werkzeuges confgure varianten-konfgurierbar erzeugt ein Baumanagement-Sytem. das mit autoconf confgure-skripten erzeugen kann. und automake Prof. U. Aßmann, SEW 18 45.3 Aufgabenmanagement (Fehler- und Änderungsmanagement) Aufgabenmanagement Es beinhaltet die Erfassung, Registratur, Speicherung und Verfolgung von Fehlermeldungen Änderungsanforderungen und steuert alle dazu notwendigen Vorgänge: Bewertung der Änderung: Nach der Notwendigkeit der Auswirkungen, wobei jede Änderung einer Version zu einer neuen Version führt Planung und Entscheid des Änderungsvorgehens: Vorgehen nach einer defi nierten Änderungsprozedur mit Durchlauf geforderter Zustände(V-Modell). Einleitung und Überwachung der Änderungsdurchführung: Darstellung des Änderungsgeschehens in einem Logbuch, dessen Ein-tragungen sich immer auf defi nierte Versionen von Komponenten beziehen. Daraus sollen Änderungsstatistiken auf Abruf generierbar sein. Abschluß und Auswertung der Änderung:. Alle Änderungen sollen nachvollziehbar und rekonstrukturierbar sein.. Es ist eine Historie zu führen, die alle Änderungsdaten einschließlich eines ausführlichen Kommentars enthält.. Als Vorgehensbaustein Problem- und Änderungsmanagement im V-Modell XT realisiert. SEW, Prof. Uwe Aßmann 19 Prof. U. Aßmann, SEW 20

Aufgabenmanagement-Tools Aufgabenmanagment (Fehler und Änderungen) mit Mantis Mantis ist ein webbasiertes Aufgabenmanagement-System (issue tracking system) Bugzilla Mozilla (OSS) www.bugzilla.org Mantis OSS http://www.mantisbt.org/ Zustandsmaschine für Fehler und Änderungswünsche Generierung von emails über Statusänderungen Visualisierung von Zuständen und Bearbeitern Unassigned Assigned Recently Modified http://en.wikipedia.org/wiki/comparison_of_issue_tracking_systems Resolved Überblick über Aufgaben [www.mantisbt.org] Prof. U. Aßmann, SEW 21 Überblick über Zustände der Aufgaben Prof. U. Aßmann, SEW 22 Prof. U. Aßmann, SEW 23 Prof. U. Aßmann, SEW 24

The End Prof. U. Aßmann, SEW 25