Pascal v xwpe
Pavel JANIK ml.
pjanik na aida.inet.cz
Pátek Listopad 1 18:48:50 CET 1996
Cau kolegove,
ponevadz je muj mailbox preplnen dotazy o mem "triku" jak dostat pascal do
xwpe, rozhodl jsem se zaslat tento prispevek primo do konference - doufam,
ze se ti z Vas, ktere jazyk Pascal nezajima (mimochodem mne je take pascal
ukradeny, ale FI.muni.cz .... no comment) nebudou zlobit.
Abychom vubec mohli kompilovat programy v jazyce pascal, musime si
nainstalovat gpc (mne se libi asi nejvice) - najdete jej na anonymnim ftp
serveru ftp://kampi.hut.fi/gpc . Pokud mate RedHat 4.0 nebo obecne
distribuci s gcc (ano GCC) verze 2.7.2 (gcc --version) doporucuji verzi s
adresare gpc-2.7.2 . Jak jste jiz sami poznali gpc potrebuje ke sve praci
gcc.
Dalsim krokem bude "zabudovani" tohoto kompileru do prostredi xwpe
(mimochodem - jsem zvedav, kdo pouziva xwpe - podle meho nazoru je to strasne
- lepsi je wpe na konzole, ale jak ted pozoruji, musite mit standardni
keytable :-))). Budeme problem resit postupne - v menu Options (Alt O) je
kolonka Compiler a v ni je volba Add Compiler (POZOR ZASE TAK JEDNODUCHE TO
NEBUDE). Pridame-li kompiler Pascalu :
Compiler gpc
Compiler-Options -g -Wall ... budeme chtit i debugging a chybi nam
lint :-))
Loader-Options
Executable
Language PASCAL
File-postfix .pas
A nyni ulozime nase volby (Options/Save Options), a napiseme maly programek
:
program test;
begin
writeln ('Konecne mi to funguje');
end.
pokusime se jej zkomp. a sestavit - (Alt-M) prekladac ohlasi, ze je vse ok
(Success), ale podivate-li se do aktualniho adresare a zjistite, ze program
gpc obdrzel signal 11 (Segm. fault ve funkci strcpy ... saha kam nema :-))
.... pri blizsim
zkoumani je mozne zjistit, ze gpc umi program zkompilovat, ale chceme-li,
aby slinkoval zkompilovanou binarku,
tak nastane chyba ve sdileni pameti. (Jiste se ptate, kde se
pri kompilaci vzal parametr -c, kdyz jsme jako compiler-opt zadali -g -Wall
..... to je mi zahadou (ale pravdepodobne to bude proto, ze wpe predpoklada
tri faze - vlastni preklad, linkovani a spusteni)
a prave proto jsem si musel napsat programek, ktery
se u mne jmenuje gpc_wrapper - "zdrojak" (I like shell):
----------------------------------- cut here -----------------------------
# Script kolem gpc, protoze jsem mel problemy s xwpe - proto pouzivat tento
# wrapper ale pouze pro wpe :-(( Budu-li chtit kompilovat neco normalne bez
# vyvojoveho prostredi, pouzit gpc :-))
#
# (c) Pavel JANIK ml., INET a.s. 1996
#
# Napiste finger weed na bart.math.muni.cz a prectete si a jiste mi napiste
# ======================================================================
# subject LINUX CZ USERS
#
#
PARAMETERS=$*
FLAG=`echo $PARAMETERS|awk '{print $1}'`
if test "$FLAG" = -c
then
RUN_IT='/usr/bin/gpc '$PARAMETERS
fi
if test "$FLAG" = -o
then
RUN_IT='/usr/bin/gcc '$PARAMETERS' -lgpc'
fi
eval `echo $RUN_IT`
# Taky jsem necekal, ze to bude takova ... (tak jednoduche :)))
----------------------------------- cut here -----------------------------
Jeste zmenime v Options/PASCAL Compiler na /cesta/k/memu/souboru/gpc_wrapper
a vse by melo fungovat :-)))
Neni to nadhera ???
Vyhody :
napisete-li na konzole wpe blabla.pas muzete kompilovat pascalovske
programky
samozrejme muzete mit otevrenych vice programu - napr. test.c , test.pas apod
:-))) No reknete, neni to parada ??? (neumim-li neco napsat v C, napisu-si to
c pascalu :-)))
Dalsi kompilatory (podle meho nastaveni :)
C++
Compiler g++
Compiler-Opt -g -Wall
Language C++File-postfix - .cc
ANSI C
Compiler gcc
Opt -g -Wall -ansi
LAnguage ANSI -C
postfix .C
Myslim, ze by nemel byt problem vlozit jakykoliv jazyk, ktery neni
interpretovany.
A na zaver (nejak se mi tento dopis vymkl z rukou :-)) - bych chtel vyhlasit
soutez o nejlepsi program, ktery je kompilovatelny pomoci "meho" triku (tedy
obecne Pascalovsky program). Programky mi posilejte se subj : PASCAL.
Doufam, ze jsem nekterym z Vas, kteri se o Packal zajimate, usetril spoustu
casu.
Pavel JANIK ml.
############################################################################
# Nietzsche: God is Dead #
# God: Nietzsche is Dead Pavel.JANIK na inet.cz #
# The Dead: Nietzsche is God http://www.inet.cz/webacc #
# _ _ _ _ _ _ _ #
#| | (_) tel. (05) 41 32 12 76 / 171 | || || || || | #
#| | _ _ __ _ _ __ __ | || || || || | #
#| | | || '_ \ | | | |\ \/ / | || || || || | #
#| |____ | || | | || |_| | > < je nejlepsi OS |_||_||_||_||_| #
#|______||_||_| |_| \__,_|/_/\_\ (_)(_)(_)(_)(_) #
# #
#Jestlize souhlasite, finger weed na bart.math.muni.cz a mailnete mi #
#podobne informace se subjectem LINUX CZ USERS :-))) #
############################################################################
Další informace o konferenci Linux