Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2010 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu dotyczącego programowania obiektowego. Jest on udostępniony pod warunkiem wykorzystania wyłącznie do własnych prywatnych potrzeb i może on być kopiowany wyłącznie w całości, razem z niniejszą stroną tytułową.
Niniejsza prezentacja została wykonana przy użyciu systemu składu PDFL A TEX oraz stylu beamer, którego autorem jest Till Tantau. Strona domowa projektu Beamer: http://latex-beamer.sourceforge.net
1 XML podstawowe własności Ogólna charaktrystyka Organizacja dokumentu XML XML Schema 2 Pakiet i jego narzędzia
Podstawowe cechy XML podstawowe własności Ogólna charaktrystyka Organizacja dokumentu XML XML Schema XML (extensible Markup Language) Rozszerzalny Język Znaczników XML jest tylko składnia przeznaczona do opisu danych. Poza konkretną aplikacją dane zapisane w XML nie mają większego sensu, gdyż zazwyczaj tylko dana aplikacja wie jak je interpretować. Standard XML został opracowany i zdefiniowany przez World Wide Web Consortium (W3C). Najistotniejsze cechy XML: bazuje na tekstowym formacie plików jest niezależny od platformy, umożliwia strukturalizację danych.
Geneza XML XML podstawowe własności Ogólna charaktrystyka Organizacja dokumentu XML XML Schema XML bazuje na SGML (Standard Generalized Markup Language). Wprowadzenie wiązało się z chęcią uproszczenia SGML.
Geneza XML XML podstawowe własności Ogólna charaktrystyka Organizacja dokumentu XML XML Schema XML bazuje na SGML (Standard Generalized Markup Language). Wprowadzenie wiązało się z chęcią uproszczenia SGML. SGML HTML XML
Geneza XML XML podstawowe własności Ogólna charaktrystyka Organizacja dokumentu XML XML Schema XML bazuje na SGML (Standard Generalized Markup Language). Wprowadzenie wiązało się z chęcią uproszczenia SGML. SGML HTML XML XHTML
Różnice między XML a HTML Ogólna charaktrystyka Organizacja dokumentu XML XML Schema Przeznaczenie: XML jest używany do opisu danych, HTML jest używany przede wszystkim w celu zobrazowania informacji.
Różnice między XML a HTML Ogólna charaktrystyka Organizacja dokumentu XML XML Schema Przeznaczenie: XML jest używany do opisu danych, HTML jest używany przede wszystkim w celu zobrazowania informacji. Różnice interpretacji składni: XML Rozróżnia małe i duże litery Rygorystycznie wymagane zamykanie wszystkich znaczników Każdy atrybut musi mieć wartość ujętą w cudzysłowy lub apostrofy. HTML Brak różnicy w interpretacji małych i dużych liter. Nie wszystkie znaczniki muszą być zamykane, np <p>. Wartości atrybutów nie muszą być ujęte w cudzysłowy lub apostrofy. Atrybuty nie muszą mieć wartości.
Inne cechy XML XML podstawowe własności Ogólna charaktrystyka Organizacja dokumentu XML XML Schema Nazwy znaczników nie mogą się rozpoczynać od przedrostka xml lub xsl (niezależnie od wielkości liter), Dane XML mogą być zapisywane w pełnym zestawie znaków UNICODE. Można używać przestrzeni nazw.
Budowa dokumentu XML Ogólna charaktrystyka Organizacja dokumentu XML XML Schema document ::= prolog element Misc* Prolog Treść Epilog
Budowa dokumentu XML Ogólna charaktrystyka Organizacja dokumentu XML XML Schema document ::= prolog element Misc* Prolog <?xml version="1.0"> Treść Epilog
Budowa dokumentu XML Ogólna charaktrystyka Organizacja dokumentu XML XML Schema document ::= prolog element Misc* Prolog <?xml version="1.0" encoding="utf-8" standalone="yes"?> Treść Epilog
Budowa dokumentu XML Ogólna charaktrystyka Organizacja dokumentu XML XML Schema document ::= prolog element Misc* Prolog <?xml version="1.0" encoding="utf-8" standalone="yes"?> <!DOCTYPE cataloge [... ]> Treść Epilog
Budowa dokumentu XML Ogólna charaktrystyka Organizacja dokumentu XML XML Schema document ::= prolog element Misc* Prolog Treść <ActionsSet> <Action Name="Move" > <Parameter Name="speed" Value="35" /> <Parameter Name="dist" Value="200" /> <Parameter Name="safeZone" Value="30" /> </Action> </ActionsSet> Epilog
Budowa dokumentu XML Ogólna charaktrystyka Organizacja dokumentu XML XML Schema document ::= prolog element Misc* Prolog Treść Epilog
Elementy XML podstawowe własności Ogólna charaktrystyka Organizacja dokumentu XML XML Schema <ActionsSet> <Action Name="Move" > <Parameter Name="speed" Value="35" /> </Action> </ActionsSet> Musi być zachowany ścisły porządek znaczników otwierających i zamykających. Nie jest dopuszczalna konstrukcja typu: <b>hello<i>world</b></i>
Atrybuty XML podstawowe własności Ogólna charaktrystyka Organizacja dokumentu XML XML Schema <ActionsSet> <Action Name="Move" > <Parameter Name="speed" Value="35" /> </Action> </ActionsSet> Atrybuty muszą mieć wartość. Wartości atrybutów muszą być ujęte w cudzysłowy lub apostrofy. Wewnątrz wartości nie mogą występować znaki < i &. Zamiast nich można użyć < oraz %amp; Jeśli konieczne jest użycie znaków (cudzysłów) oraz (apostrof), to należy zastosować skrót odpowiednio " lub &a
Komentarze XML podstawowe własności Ogólna charaktrystyka Organizacja dokumentu XML XML Schema <ActionsSet> <Action Name="Move" > <!-- Komentarz --> <Parameter Name="speed" Value="35" /> </Action> </ActionsSet> Wewnątrz komentarza nie można użyć dwóch minusów -- Linia nie może być zakończona znakiem minus -. Parser XML nie ma obowiązku analizować komentarza.
DTD Document-Type Definition Ogólna charaktrystyka Organizacja dokumentu XML XML Schema <ActionsSet> <Action Name="Move" > <Parameter Name="speed" Value="35" /> <Parameter Name="dist" Value="200" /> <Parameter Name="safeZone" Value="30" /> </Action> </ActionsSet>
DTD Document-Type Definition Ogólna charaktrystyka Organizacja dokumentu XML XML Schema <?xml version="1.0" encoding="utf-8" standalone="yes"?> <!DOCTYPE ActionsSet [ <!ELEMENT ActionsSet (Action+)> <!ELEMENT Action (Parametr+)> <!ATTLIST Action Name CDATA #REQUIRED> <!ELEMENT Parameter> <!ATTLIST Parametr Name CDATA #REQUIRED> <!ATTLIST Parametr Value CDATA #REQUIRED> ]> <ActionsSet> <Action Name="Move" > <Parameter Name="speed" Value="35" /> <Parameter Name="dist" Value="200" /> <Parameter Name="safeZone" Value="30" /> </Action> </ActionsSet>
Ogólna charaktrystyka Organizacja dokumentu XML XML Schema XML Schema ogólna charakterystyka XML Schema jest językiem opartym na XML. Jest on stworzony w celu opisu języków opartych na XML oraz modułów danych. XML Schema definiuje nazwy elementów i atrybutów dla danej klasy dokumentów XML, jak też całą strukturę dokumentu. Realizuje te same zadanie, do którego był wykorzystywany DTD. Ma jednak znacznie większe możliwości. Oprócz tego XML Schema jest strukturą XML w odróżnieniu od DTD.
Ogólna charaktrystyka Organizacja dokumentu XML XML Schema XML Schema ogólna charakterystyka Dodatkowe możliwości XML Schema w stosunku do DTD: definiowanie typów prostych i złożonych, definiowanie typów pochodnych poprzez zawężanie typu bazowego, przestrzenie nazw, możliwość definiowania kontekstu elementów i atrybutów, który określa dopuszczalne typy atrybutów. W nazwach plików, które zawierają definicje XML Schema stosuje się powszechnie rozszerzenie.xsd (XML Schema Definition).
Ogólna charaktrystyka Organizacja dokumentu XML XML Schema Przykład dokumentu XML i XML Schema XML dokument: <?xml version="1.0"?> <Person> Mark Kowalski </Person>
Ogólna charaktrystyka Organizacja dokumentu XML XML Schema Przykład dokumentu XML i XML Schema XML dokument: <?xml version="1.0"?> <Person> Mark Kowalski </Person> XML Schema dokument: <?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/xmlschema"> <xs:element name="person" type="xs:string"/> </xs:schema>
Ogólna charaktrystyka Organizacja dokumentu XML XML Schema Przykład dokumentu XML i XML Schema XML dokument: <?xml version="1.0"?> <Person> <Forename>Jan</Forename> <Surname>Kowalski</Surname> </Person>
Ogólna charaktrystyka Organizacja dokumentu XML XML Schema Przykład dokumentu XML i XML Schema XML Schema dokument: <?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/xmlschema"> <xs:element name="person"> <xs:complextype> <xs:sequence> <xs:element name="forename" type="xs:string"/> <xs:element name="surname" </xs:sequence> </xs:complextype> </xs:element> </xs:schema> type="xs:string"/>
Ogólna charaktrystyka Organizacja dokumentu XML XML Schema Przykład dokumentu XML i XML Schema XML dokument: <?xml version="1.0"?> <Person Forename="Jan" Surname="Kowalski"/>
Ogólna charaktrystyka Organizacja dokumentu XML XML Schema Przykład dokumentu XML i XML Schema XML dokument: <?xml version="1.0"?> <Person Forename="Jan" Surname="Kowalski"/> XML Schema dokument: <?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/xmlschema"> <xs:element name="person"> <xs:complextype> <xs:sequence> </xs:sequence> <xs:attribute name="forename" type="xs:string"/> <xs:attribute name="surname" type="xs:string"/> </xs:complextype> </xs:element> </xs:schema>
Ogólna charaktrystyka Organizacja dokumentu XML XML Schema Przykład dokumentu XML i XML Schema Przykład zaczerpnięty z http://www.learn-xml-schema-tutorial.com
Kiedy dane, a kiedy atrybuty? Ogólna charaktrystyka Organizacja dokumentu XML XML Schema Atrybuty nie powinny zmieniać charakteru danego obiektu. W tym kontekście w poprzednim przykładzie imię i nazwisko powinno występować w sekcji dane.
Modele rozbioru dokumentu XML Ogólna charaktrystyka Organizacja dokumentu XML XML Schema DOM Document Object Model SAX Simple API for XML
Pakiet i jego narzędzia Problemy przenośności pakietów instalacyjnych Różnice w sprzęcie: układ słowa big-endian, little-endian, rozmiar typów zmiennych np. sizeof(long int), gcc, dla Intel Core2 Duo 32, Amd64 64. Różnice w systemach operacyjnych: różne konwencje nazw, różne nazwy urządzeń. Różne kompilatory: nazwy kompilatorów, nazwy i rodzaj opcji, różne pliki nagłówkowe. występowanie lub nie występowanie makr np. M PI, różne lokalizacje zapowiedzi niektórych funkcji np. exit(). Różne wersje bibliotek
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> _
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls hello-3.4.1.tar.gz jkowalsk@comp:package> _
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls hello-3.4.1.tar.gz jkowalsk@comp:package> gunzip hello-3.4.1.tar.gz
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls hello-3.4.1.tar.gz jkowalsk@comp:package> gunzip hello-3.4.1.tar.gz jkowalsk@comp:package> _
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls hello-3.4.1.tar.gz jkowalsk@comp:package> gunzip hello-3.4.1.tar.gz jkowalsk@comp:package> ls hello-3.4.1.tar jkowalsk@comp:package>
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls hello-3.4.1.tar.gz jkowalsk@comp:package> gunzip hello-3.4.1.tar.gz jkowalsk@comp:package> ls hello-3.4.1.tar jkowalsk@comp:package> tar -xf hello-3.4.1.tar jkowalsk@comp:package>
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls hello-3.4.1.tar.gz jkowalsk@comp:package> gunzip hello-3.4.1.tar.gz jkowalsk@comp:package> ls hello-3.4.1.tar jkowalsk@comp:package> tar -xf hello-3.4.1.tar jkowalsk@comp:package> ls
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls hello-3.4.1.tar.gz jkowalsk@comp:package> gunzip hello-3.4.1.tar.gz jkowalsk@comp:package> ls hello-3.4.1.tar jkowalsk@comp:package> tar -xf hello-3.4.1.tar jkowalsk@comp:package> ls hello-3.4.1/ hello-3.4.1.tar jkowalsk@comp:package>
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls hello-3.4.1.tar.gz jkowalsk@comp:package> _
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls hello-3.4.1.tar.gz jkowalsk@comp:package> tar -xzf hello-3.4.1.tar.gz
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls hello-3.4.1.tar.gz jkowalsk@comp:package> tar -xzf hello-3.4.1.tar.gz jkowalsk@comp:package> _
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls hello-3.4.1.tar.gz jkowalsk@comp:package> tar -xzf hello-3.4.1.tar.gz jkowalsk@comp:package> ls
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls hello-3.4.1.tar.gz jkowalsk@comp:package> tar -xzf hello-3.4.1.tar.gz jkowalsk@comp:package> ls hello-3.4.1/ hello-3.4.1.tar.gz jkowalsk@comp:package>
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls hello-3.4.1.tar.gz jkowalsk@comp:package> tar -xzf hello-3.4.1.tar.gz jkowalsk@comp:package> ls hello-3.4.1/ hello-3.4.1.tar.gz jkowalsk@comp:package> cd hello-3.4.1
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls hello-3.4.1.tar.gz jkowalsk@comp:package> tar -xzf hello-3.4.1.tar.gz jkowalsk@comp:package> ls hello-3.4.1/ hello-3.4.1.tar.gz jkowalsk@comp:package> cd hello-3.4.1 jkowalsk@comp:hello-3.4.1>
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls hello-3.4.1.tar.gz jkowalsk@comp:package> tar -xzf hello-3.4.1.tar.gz jkowalsk@comp:package> ls hello-3.4.1/ hello-3.4.1.tar.gz jkowalsk@comp:package> cd hello-3.4.1 jkowalsk@comp:hello-3.4.1>./configure
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:package> ls hello-3.4.1.tar.gz jkowalsk@comp:package> tar -xzf hello-3.4.1.tar.gz jkowalsk@comp:package> ls hello-3.4.1/ hello-3.4.1.tar.gz jkowalsk@comp:package> cd hello-3.4.1 jkowalsk@comp:hello-3.4.1>./configure checking for a BSDcompatible install... /usr/bin/install c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $MAKE... yes checking for gcc... gcc... jkowalsk@comp:hello-3.4.1>
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure checking for a BSDcompatible install... /usr/bin/install c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $MAKE... yes checking for gcc... gcc... jkowalsk@comp:hello-3.4.1>
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure checking for a BSDcompatible install... /usr/bin/install c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $MAKE... yes checking for gcc... gcc... jkowalsk@comp:hello-3.4.1> make
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure checking for a BSDcompatible install... /usr/bin/install c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $MAKE... yes checking for gcc... gcc... jkowalsk@comp:hello-3.4.1> make make allrecursive make[1]: Entering directory /home/jkowalsk/package/hello-3.4.1 Making all in contrib...
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure checking for a BSDcompatible install... /usr/bin/install c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $MAKE... yes checking for gcc... gcc... jkowalsk@comp:hello-3.4.1> make make allrecursive make[1]: Entering directory /home/jkowalsk/package/hello-3.4.1 Making all in contrib... jkowalsk@comp:hello-3.4.1>
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure checking for a BSDcompatible install... /usr/bin/install c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $MAKE... yes checking for gcc... gcc... jkowalsk@comp:hello-3.4.1> make make allrecursive make[1]: Entering directory /home/jkowalsk/package/hello-3.4.1 Making all in contrib... jkowalsk@comp:hello-3.4.1> su Password:
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure checking for a BSDcompatible install... /usr/bin/install c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $MAKE... yes checking for gcc... gcc... jkowalsk@comp:hello-3.4.1> make make allrecursive make[1]: Entering directory /home/jkowalsk/package/hello-3.4.1 Making all in contrib... jkowalsk@comp:hello-3.4.1> su Password: jkowalsk@comp:hello-3.4.1#
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure checking for a BSDcompatible install... /usr/bin/install c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $MAKE... yes checking for gcc... gcc... jkowalsk@comp:hello-3.4.1> make make allrecursive make[1]: Entering directory /home/jkowalsk/package/hello-3.4.1 Making all in contrib... jkowalsk@comp:hello-3.4.1> su Password: jkowalsk@comp:hello-3.4.1# make install
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure checking for a BSDcompatible install... /usr/bin/install c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $MAKE... yes checking for gcc... gcc... jkowalsk@comp:hello-3.4.1> make make allrecursive make[1]: Entering directory /home/jkowalsk/package/hello-3.4.1 Making all in contrib... jkowalsk@comp:hello-3.4.1> su Password: jkowalsk@comp:hello-3.4.1# make install set fnord $MAKEFLAGS; amf=$2; dot_seen=no; \ target= echo installrecursive sed s/recursive// ; \...
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure checking for a BSDcompatible install... /usr/bin/install c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $MAKE... yes checking for gcc... gcc... jkowalsk@comp:hello-3.4.1> make make allrecursive make[1]: Entering directory /home/jkowalsk/package/hello-3.4.1 Making all in contrib... jkowalsk@comp:hello-3.4.1> su Password: jkowalsk@comp:hello-3.4.1# make install set fnord $MAKEFLAGS; amf=$2; dot_seen=no; \ target= echo installrecursive sed s/recursive// ; \...
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure -prefix=${home}/soft
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure -prefix=${home}/soft checking for a BSDcompatible install... /usr/bin/install c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $MAKE... yes checking for gcc... gcc... jkowalsk@comp:hello-3.4.1>
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure -prefix=${home}/soft checking for a BSDcompatible install... /usr/bin/install c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $MAKE... yes checking for gcc... gcc... jkowalsk@comp:hello-3.4.1> make make allrecursive make[1]: Entering directory /home/jkowalsk/package/hello-3.4.1 Making all in contrib... jkowalsk@comp:hello-3.4.1>
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure -prefix=${home}/soft checking for a BSDcompatible install... /usr/bin/install c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $MAKE... yes checking for gcc... gcc... jkowalsk@comp:hello-3.4.1> make make allrecursive make[1]: Entering directory /home/jkowalsk/package/hello-3.4.1 Making all in contrib... jkowalsk@comp:hello-3.4.1> make install
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure -prefix=${home}/soft checking for a BSDcompatible install... /usr/bin/install c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $MAKE... yes checking for gcc... gcc... jkowalsk@comp:hello-3.4.1> make make allrecursive make[1]: Entering directory /home/jkowalsk/package/hello-3.4.1 Making all in contrib... jkowalsk@comp:hello-3.4.1> make install set fnord $MAKEFLAGS; amf=$2; dot_seen=no; \ target= echo installrecursive sed s/recursive// ; \...
Instalacja pakietów GNU Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure -prefix=${home}/soft checking for a BSDcompatible install... /usr/bin/install c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $MAKE... yes checking for gcc... gcc... jkowalsk@comp:hello-3.4.1> make make allrecursive make[1]: Entering directory /home/jkowalsk/package/hello-3.4.1 Making all in contrib... jkowalsk@comp:hello-3.4.1> make install set fnord $MAKEFLAGS; amf=$2; dot_seen=no; \ target= echo installrecursive sed s/recursive// ; \...
Przykładowe opcje skryptu configure Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure -help configure configures hello 3.1.1 to adapt to many kinds of systems. Usage:./configure [OPTION]... [VAR=VALUE]... To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE. See below for descriptions of some of the useful variables. Defaults for the options are specified in brackets. Configuration: -h, --help --help=short --help=recursive -V, --version... display this help and exit display options specific to this package display the short help of all the included packages display version information and exit
Przykładowe opcje skryptu configure Pakiet i jego narzędzia jkowalsk@comp:hello-3.4.1>./configure -help...... Installation directories: --prefix=prefix install architecture-independent files in PREFIX [/usr/local] --exec-prefix=eprefix install architecture-dependent files in EPREFIX [PREFIX] By default, make install will install all the files in /usr/local/bin, /usr/local/lib etc. You can specify an installation prefix other than /usr/local using --prefix, for instance --prefix=$home. For better control, use the options below. Fine tuning of the installation directories: --bindir=dir user executables [EPREFIX/bin]...
Podstawowe cechy pakietu autotools Pakiet i jego narzędzia jest to pakiet narzędzi, który powstał jako część projektu GNU. Podstawowym ich zadaniem jest wspieranie tworzenia przenośnych pakietów instalacyjnych dla oprogramowania tworzonego w ramach projektu GNU. Podstawowe programy z pakietu: automake, autoconf, libtool Dodatkowe narzędzia: autoconf, autoheader, autom4te, autoupdate, autodep, autoinst, autopoint, autoscan, aclocal, libtoolize
Podstawowe cechy pakietu autotools Pakiet i jego narzędzia jest to pakiet narzędzi, który powstał jako część projektu GNU. Podstawowym ich zadaniem jest wspieranie tworzenia przenośnych pakietów instalacyjnych dla oprogramowania tworzonego w ramach projektu GNU. Podstawowe programy z pakietu: automake, autoconf, libtool Dodatkowe narzędzia: autoconf, autoheader, autom4te, autoupdate, autodep, autoinst, autopoint, autoscan, aclocal, libtoolize
Podstawowe cechy pakietu autotools Pakiet i jego narzędzia jest to pakiet narzędzi, który powstał jako część projektu GNU. Podstawowym ich zadaniem jest wspieranie tworzenia przenośnych pakietów instalacyjnych dla oprogramowania tworzonego w ramach projektu GNU. Podstawowe programy z pakietu: automake, autoconf, libtool Dodatkowe narzędzia: autoconf, autoheader, autom4te, autoupdate, autodep, autoinst, autopoint, autoscan, aclocal, libtoolize
Autoconf czym jest Pakiet i jego narzędzia Autoconf narzędzie umożliwiające generowanie skryptów, które służą do tworzenia pakietów, ich kompilacji oraz instalacji. Narzędzie to jest niezależna od języka programowania, w którym napisany jest dany pakiet. Skrypty tworzone przez autoconf wykorzystują Bourne shell a.
Autoconf czym jest Pakiet i jego narzędzia Autoconf narzędzie umożliwiające generowanie skryptów, które służą do tworzenia pakietów, ich kompilacji oraz instalacji. Narzędzie to jest niezależna od języka programowania, w którym napisany jest dany pakiet. Skrypty tworzone przez autoconf wykorzystują Bourne shell a. Zalety: skrypt konfiguracyjny daje sensowne rezultaty rezulaty dla systemów, które powstały później niż sam pakiet. pozwala adminstratorom na dopasowanie generowanych skryptów do specyfiki danego komputera i systemu, automatycznie sprawdza niezbędne zależności.
Autoconf czym jest Pakiet i jego narzędzia Autoconf narzędzie umożliwiające generowanie skryptów, które służą do tworzenia pakietów, ich kompilacji oraz instalacji. Narzędzie to jest niezależna od języka programowania, w którym napisany jest dany pakiet. Skrypty tworzone przez autoconf wykorzystują Bourne shell a. Zalety: skrypt konfiguracyjny daje sensowne rezultaty rezulaty dla systemów, które powstały później niż sam pakiet. pozwala adminstratorom na dopasowanie generowanych skryptów do specyfiki danego komputera i systemu, automatycznie sprawdza niezbędne zależności. Wady: generowane skrypty są bardzo złożone, wykorzystywane makra M4 są dla wielu użytkowników niezrozumiałe.
Automake czym jest Pakiet i jego narzędzia Automake wykorzystywany jest do generowania plików typu Makefile. Program automake napisany jest w Perlu. W tworzony plikach Makefile uwzględnia zależności między plikami. Mogą one być wyznaczone z wykorzystaniem narzędzi makedepend (ale nie muszą).
Automake czym jest Pakiet i jego narzędzia Automake wykorzystywany jest do generowania plików typu Makefile. Program automake napisany jest w Perlu. W tworzony plikach Makefile uwzględnia zależności między plikami. Mogą one być wyznaczone z wykorzystaniem narzędzi makedepend (ale nie muszą). Standardowo tworzone Makefile umożliwia realizację takich celów jak: clean install budowanie oprogramowania (kompilacja, konsolidacja), usuwanie produktów kompilacji, instalacja zbudowanego oprogramowania, uninstall deinstalacja oprogramowania.
Automake czym jest Pakiet i jego narzędzia Automake wykorzystywany jest do generowania plików typu Makefile. Program automake napisany jest w Perlu. W tworzony plikach Makefile uwzględnia zależności między plikami. Mogą one być wyznaczone z wykorzystaniem narzędzi makedepend (ale nie muszą). Standardowo tworzone Makefile umożliwia realizację takich celów jak: clean install budowanie oprogramowania (kompilacja, konsolidacja), usuwanie produktów kompilacji, instalacja zbudowanego oprogramowania, uninstall deinstalacja oprogramowania. Przykład wywołania z realizacją danego podcelu: make clean
Libtool czym jest XML podstawowe własności Pakiet i jego narzędzia Libtool umożliwia tworzenie przenośnych kompilowalnych bibliotek zarówno statycznych jak też bibliotek dynamicznie konsolidowanych. Pozwala na ukrycie elementów procesu tworzenia takich bibliotek zależnych od systemu operacyjnego.
Libtool czym jest XML podstawowe własności Pakiet i jego narzędzia Libtool umożliwia tworzenie przenośnych kompilowalnych bibliotek zarówno statycznych jak też bibliotek dynamicznie konsolidowanych. Pozwala na ukrycie elementów procesu tworzenia takich bibliotek zależnych od systemu operacyjnego. Libtoolize jest częścią pakietu Libtool. Wspomaga proces tworzenia pakietu instalacyjnego poprzez dodanie obsługi tworzenia bibliotek za pomocą libtool do pakietu instalacyjnego.
Jak to wygląda XML podstawowe własności Pakiet i jego narzędzia interp4rob/ *-README *-src/ *-main.cpp
Jak to wygląda XML podstawowe własności Pakiet i jego narzędzia interp4rob/ *-README *-src/ *- main.cpp main.cpp: #i n c l u d e <i ostream > u s i n g namespace s t d ; i n t main ( ) { cout << I n t e r p r e t e r p o l e c e n << e n d l ; }
Jak to wygląda XML podstawowe własności Pakiet i jego narzędzia interp4rob/ *- README *-src/ *-main.cpp README: W sklad niniejszego pakietu wchodzi program interp4rob. Jedna z istotnych funkcjonalnosci tego programu jest to, ze generuje on plik core (i naprawde nie wiem dlaczego).
Jak to wygląda XML podstawowe własności Pakiet i jego narzędzia interp4rob/ *-README *-src/ *-main.cpp
Jak to wygląda XML podstawowe własności Pakiet i jego narzędzia interp4rob/ *-configure.ac *-README *-src/ *-main.cpp
Jak to wygląda XML podstawowe własności Pakiet i jego narzędzia interp4rob/ *- configure.ac *-README *-src/ *-main.cpp AC_INIT([interp4rob], [1.0], [jkowals@diablo.iiar.pwr.wroc.pl]) AM_INIT_AUTOMAKE([-Wall -Werror foreign]) AC_LANG_CPLUSPLUS AC_PROG_CXX AC_CONFIG_HEADERS([config.h]) AC_CONFIG_FILES([ Makefile src/makefile ]) AC_PROG_INSTALL AC_OUTPUT
Jak to wygląda XML podstawowe własności Pakiet i jego narzędzia interp4rob/ *-configure.ac *-README *-src/ *-main.cpp
Jak to wygląda XML podstawowe własności Pakiet i jego narzędzia interp4rob/ *-configure.ac *-Makefile.am *-README *-src/ *-main.cpp
Jak to wygląda XML podstawowe własności Pakiet i jego narzędzia interp4rob/ *-configure.ac *- Makefile.am *-README *-src/ *-main.cpp SUBDIRS = src dist_doc_data = README
Jak to wygląda XML podstawowe własności Pakiet i jego narzędzia interp4rob/ *-configure.ac *-Makefile.am *-README *-src/ *-main.cpp
Jak to wygląda XML podstawowe własności Pakiet i jego narzędzia interp4rob/ *-configure.ac *-Makefile.am *-README *-src/ *-Makefile.am *-main.cpp
Jak to wygląda XML podstawowe własności Pakiet i jego narzędzia interp4rob/ *-configure.ac *-Makefile.am *-README *-src/ *- Makefile.am *-main.cpp bin_programs = interp4rob interp4rob_sources = main.cpp
Generowanie plików konfiguracyjnych Pakiet i jego narzędzia interp4rob/ *-configure.ac *-Makefile.am *-README *-src/ *-Makefile.am *-main.cpp jkowalsk@comp:interp4rob>
Generowanie plików konfiguracyjnych Pakiet i jego narzędzia interp4rob/ *-configure.ac *-Makefile.am *-README *-src/ *-Makefile.am *-main.cpp jkowalsk@comp:interp4rob> autoreconf --install
Generowanie plików konfiguracyjnych Pakiet i jego narzędzia interp4rob/ *-configure.ac *-Makefile.am *-README *-src/ *-Makefile.am *-main.cpp jkowalsk@comp:interp4rob> autoreconf --install configure.ac:2: installing./install-sh configure.ac:2: installing./missing src/makefile.am: installing./depcomp jkowalsk@comp:interp4rob>
Generowanie plików konfiguracyjnych Pakiet i jego narzędzia interp4rob/ *-configure *-Makefile.in *-(duzo innych plikow)... jkowalsk@comp:interp4rob>
Generowanie plików konfiguracyjnych Pakiet i jego narzędzia interp4rob/ *-configure *-Makefile.in *-(duzo innych plikow)... jkowalsk@comp:interp4rob>./configure
Generowanie plików konfiguracyjnych Pakiet i jego narzędzia jkowalsk@comp:interp4rob>./configure checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for g++... g++ checking whether the C++ compiler works... yes checking for C++ compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking for style of include used by make... GNU checking dependency style of g++... gcc3 configure: creating./config.status config.status: creating Makefile config.status: creating src/makefile config.status: creating config.h config.status: executing depfiles commands jkowalsk@comp:interp4rob>
config.h XML podstawowe własności Pakiet i jego narzędzia / c o n f i g. h. G e n e r a t e d from c o n f i g. h. i n by c o n f i g u r e. / / c o n f i g. h. i n. G e n e r a t e d from c o n f i g u r e. ac by a u t o h e a d e r. / / Name o f package / #d e f i n e PACKAGE interp4rob / Define to the address where bug r e p o r t s f o r t h i s package should be sent. / #d e f i n e PACKAGE BUGREPORT j k o w a l s @ d i a b l o. i i a r. pwr. wroc. p l / Define to the f u l l name of t h i s package. / #d e f i n e PACKAGE NAME interp4rob / D e f i n e to t h e f u l l name and v e r s i o n o f t h i s package. / #d e f i n e PACKAGE STRING interp4rob 1.0 / Define to the one symbol short name of t h i s package. / #d e f i n e PACKAGE TARNAME interp4rob / Define to the home page f o r t h i s package. / #d e f i n e PACKAGE URL / D e f i n e to t h e v e r s i o n o f t h i s package. / #d e f i n e PACKAGE VERSION 1.0 / V e r s i o n number o f package / #d e f i n e VERSION 1.0
Tworzenie pakietu instalacyjnego Pakiet i jego narzędzia jkowalsk@comp:interp4rob>
Tworzenie pakietu instalacyjnego Pakiet i jego narzędzia jkowalsk@comp:interp4rob> make
Tworzenie pakietu instalacyjnego Pakiet i jego narzędzia jkowalsk@comp:interp4rob> make... jkowalsk@comp:interp4rob>
Tworzenie pakietu instalacyjnego Pakiet i jego narzędzia jkowalsk@comp:interp4rob> make... jkowalsk@comp:interp4rob> src/interp4rob
Tworzenie pakietu instalacyjnego Pakiet i jego narzędzia jkowalsk@comp:interp4rob> make... jkowalsk@comp:interp4rob> src/interp4rob Interpreter polecen jkowalsk@comp:interp4rob>
Tworzenie pakietu instalacyjnego Pakiet i jego narzędzia jkowalsk@comp:interp4rob> make... jkowalsk@comp:interp4rob> src/interp4rob Interpreter polecen jkowalsk@comp:interp4rob> make distcheck
Tworzenie pakietu instalacyjnego Pakiet i jego narzędzia jkowalsk@comp:interp4rob> make... jkowalsk@comp:interp4rob> src/interp4rob Interpreter polecen jkowalsk@comp:interp4rob> make distcheck... ================================================ interp4rob-1.0 archives ready for distribution: interp4rob-1.0.tar.gz ================================================ jkowalsk@comp:interp4rob>
I to już koniec.