5. Budowa systemu na nowej platformie Unixowej

Jeżeli mamy do czynienia z platformą, dla której nie są dostarczone binaria, trzeba będzie skompilować TeX-a oraz towarzyszące mu programy. Nie jest to takie trudne jak się wydaje. Wszystko, czego potrzebujemy, znajduje się na CD-ROM-ie w katalogu source.

Najpierw należy zainstalować główne drzewo plików TeX-owych z CD-ROM-u TeX Live (najlepiej jest wykonać instalację podstawową, bez wybierania binariów systemowych).

5.1. Warunki wstępne

Do skompilowanie całego TeX-a i jego programów pomocniczych potrzeba około 100 megabajtów wolnego miejsca na dysku. Potrzebny jest także kompilator ANSI C, oprogramowanie make, skaner leksykalny oraz generator parserów. Programy użytkowe GNU (gcc, GNU make, m4, flex, bison) są najlepiej przetestowanymi na różnych platformach. Prawidłowo powinny pracować gcc-2.7.*, flex-2.4.7 i GNU make-3.72.1 lub nowszy. Istnieje możliwość pracy z innymi kompilatorami C i programami make, wymaga to jednak dobrego zrozumienia zasad tworzenia programów Unixowych, aby poradzić sobie z problemami. W wyniku wykonania polecenia uname powinniśmy otrzymać jakąś rozsądną wartość.

5.2. Konfiguracja

Najpierw należy rozpakować źródła ze skompresowanego pliku tar z katalogu source na twardy dysk, a potem przejść do katalogu, do którego zostały skopiowane. Teraz trzeba zdecydować się, gdzie będzie główny katalog instalacji, np. /usr/local lub /usr/local/TeX. Naturalnie, należy użyć tej samej lokalizacji, która została wykorzystana przy instalowaniu głównego drzewa TeX-owego.

Uruchomić configure z linii poleceń:


>> ./configure --prefix=/usr/local/TeX

Katalog „prefix” to ten, w którym zainstalowane zostało główne drzewo TeX-owe. Zostanie wykorzystany następujący układ katalogów ($TEXDIR oznacza wybrany katalog):

$TEXDIR/man
strony manuala Unixowego,
$TEXDIR/share/texmf
główne drzewo TeX-owe, zawierające makra itp.,
$TEXDIR/info
podręczniki w formacie GNU info,
$TEXDIR/bin/$PLATFORM
binaria

Można uniknąć stosowania „share/” przed katalogiem texmf, ponieważ $TEXDIR/share/texmf$TEXDIR/texmf są wykrywane automatycznie przez skrypt configure. W przypadku wybrania innego katalogu, trzeba wyszczególnić ten katalog przez parametr --datadir skryptu configure.

Jeżeli nie chcemy używać katalogu $PLATFORM (tj. umieścić binaria bezpośrednio w $TEXDIR/bin), w wywołaniu skryptu configure należy użyć parametru --disable-multiplatform.

Więcej dostępnych parametrów (np. pomijanie pakietów opcjonalnych, takich jak Omega czy e-TeX) można zobaczyć uruchamiając ./configure –help.

5.3. Uruchamianie make

Po upewnieniu się, że nie jest ustawiona zmienna powłoki noclobber, należy napisać


>> make world
i wygodnie poczekać. . . .

Mogłoby też być użyteczne zapisanie w pliku .log całego procesu kompilacji:


>> sh -c "make world >world.log 2>&1" &
Zanim stwierdzimy, że wszystko jest w porządku, warto sprawdzić czy w pliku .log nie ma komunikatów błędów (kiedy polecenie zwraca kod błędu, GNU make zawsze używa sekwencji „Error:”) i sprawdzić czy utworzone zostały wszystkie binaria:


>> cd /usr/local/TeX/bin/i586-pc-linux-gnu
>> ls | wc
Oczekiwanym rezultatem jest 213. Polecenie make world jest równoważne z make all install strip. Jeśli do uruchamianiamake installpotrzebne są specjalne uprawnienia, można uruchomić dwie oddzielne sesje make:


>> make all
>> su
>> make install strip

5.4. Końcowe kroki konfiguracyjne

Należy uaktualnić zmienną PATH o nazwę katalogu zawierającego właśnie zainstalowane binaria (np. /usr/local/TeX/bin/mips-sgi-irix6.3); podobnie postąpić trzeba z MANPATHINFOPATH i dołączyć do nich odpowiednie nazwy podkatalogów, tj. $TEXDIR/man oraz $TEXDIR/info.

Program texconfig pozwala na ustawienie domyślnych wzorców przenoszenia wyrazów, rozmiaru papieru, poleceń do druku, trybu Metafont-a itd. Polecenia tego użyć można interaktywnie. Aby zobaczyć jakie funkcje program udostępnia wystarczy napisać


>> texconfig help

Przykładowo, jeżeli nie używamy formatu A4, możemy ustawić jako format domyślny „lettersize” pisząc:


>> texconfig dvips paper letter
>> texconfig xdvi paper us