[OSy] Problem s Vistou

Petr Tuma petr.tuma at dsrg.mff.cuni.cz
Wed Dec 12 10:39:46 CET 2007


Dobry den,

> Hlášku vypisuje přímo soubor mnou uvedený mipsel-linux-gnu-gcc.exe, 
> stačí ho totiž spustit z cmdline a zakřičí to. Takže nevím jak ho mám
> přesvědčit aby to nedělal.

Tohle je rozumna informace, hned jsme se dostali dal.
Pojdte tu hlasku parsovat se mnou:

(1) mipsel-linux-gnu-gcc.exe:
(2) CreateProcess:
(3) No such file or directory

Tedy pokud uz jsme zajedno v tom, ze (1) je jmeno programu, ktery tu
hlasku pise, tak ted stoji za to podivat se, za jakych okolnosti ji muze
gcc vypisovat.

Cast (2) vam mozna bude povedoma, nebot na prednasce jsem ukazoval, ze
je to jmeno systemoveho volani, ktere vytvari novy proces, jako parametr
chce jmeno spustitelneho souboru.

Tedy cele dohromady to rika, ze gcc se pokousi spustit nejaky
spustitelny soubor, bohuzel ta hlaska nerika jaky, a ze ten soubor 
nemuze najit. Ted uz jen staci zauvazovat, proc gcc potrebuje neco 
dalsiho spoustet.

V teto uvaze pomuze vedet, ze gcc se sklada z nekolika spustitelnych
souboru, ktere zhruba odpovidaji fazim kompilace - preprocesor,
prekladac, assembler, linker. Toto je celkem hezky popsano v manualove
strance gcc, kde take najdete poznamku o tom, ze kdyz gcc na prikazovou
radku pridate flag -v, tak bude vypisovat, ktere spustitelne soubory v
ramci prekladu spousti.

Nemaje Windows Vista, spustil jsem totez na Linuxu, kde jsem se dozvedel
napriklad toto:

> gcc -v example.c -o example
Using built-in specs.
Target: x86_64-redhat-linux
Configured with: ...
gcc version 4.1.2 20070925 (Red Hat 4.1.2-33)
  /usr/libexec/gcc/x86_64-redhat-linux/4.1.2/cc1 -quiet -v example.c
-quiet -dumpbase example.c -mtune=generic -auxbase example -version -o
/tmp/ccsSS2Dg.s

^^^ a tento radek prave rika, ze gcc spousti svou dalsi cast

Predpokladam, ze kdyz totez udelate s mipsel-linux-gnu-gcc.exe, dozvite
se, ktery soubor se gcc pokousi spustit. Pak zbyva jen podivat se,
jestli je na danem miste, pripadne jestli na nej ukazuje cesta a
podobne, cimz byste se mohl dostat zase o krok dal.

> Je možné, že třeba neexistuje ve Vistě funkce CreateProcess nebo něco
> podobného?

To bych opravdu pokladal za velmi nepravdepodobne.

Pane Stach, reknete mi prosim, kolik z vaseho mailu byly vazne minene 
dotazy, kterymi se opravdu snazite dopatrat jadra problemu s odbornou 
erudici pokrocileho studenta matfyzu ? Uvedomte si prosim, ze jednou z 
mych roli a roli vasich cvicicich v tomto predmetu je hodnoceni 
studentu, jednak pri zkousce, jednak pri praci na semestralkach. 
Jestlize pritom dospeji k zaveru, ze nektery student nedisponuje ani 
zakladnimi znalostmi, ktere by mu dovolily provadet takove ukony jako 
precist jednoradkovou chybovou hlasku a dopatrat se jejich pricin, je 
mou povinnosti takovou skutecnost zohlednit v jeho hodnoceni.

Zkuste si prosim napriklad predstavit, ze byste pracoval na uloze, 
kterou jste dostal ve cviceni z matematicke analyzy. Uloha by byla 
podminkou udeleni zapoctu a pri jejim vypracovani byste kladl otazky, 
ktere naznacuji, ze neumite malou nasobilku. Myslite, ze by to vas 
vyucujici nemel brat v potaz ?

Dekuji za odpoved, Petr Tuma




More information about the NSWI004 mailing list