Fórumok
Sziasztok,
Igazan jaratlan vagyok a temaban, gugli dobott jo par talalatot, de ha valaki esetleg mar csinalt volna ilyet, magyarul lehet, hogy konnyebben megertenem hogy is mukodik ez.
Keil forditot szeretnek hasznalni Eclipse-bol, a kovetkezo kimenetet kellene parse-olni:
C51 COMPILER V9.02 - SN: C1FEF-EAJPLD
COPYRIGHT KEIL ELEKTRONIK GmbH 1987 - 2010
*** ERROR C202 IN LINE 33 OF HELLO.C: 'R1': undefined identifier
C51 COMPILATION COMPLETE. 0 WARNING(S), 1 ERROR(S)
Az sem tiszta, hogy hol lehetne ezt beallitani az Eclipse-ben. Talan plugin-t kell csinalnom? Vagy valahol a property-k kozott be lehet allitani?
Koszi,
/sza2
Hozzászólások
Hasonlo problemamat en egy egysoros perlszkripttel oldottam meg, amivel a fordito kimenetet atalakitottam a megfelelo formatumra. Nalad ez kb igy nezne ki:
perl -pe "s/^\*{3} ERROR (\w+) IN LINE (\d+) OF (\w+\.\w+): (.*)/\3:\2: error: \1 \4/"
de ugy latom mar csinaltak azota regexp alapu error parser plugint.
A regexp alapu parsert kozben meg is talaltam. Viszont az nem mukodik, hogy ugorjon a megfelelo sorra a forrasban, ha a hibara kattintok.
"\*{3} ERROR (.+) IN LINE (\d+) OF (.+):(.+)" - igy nez ki most a regexp es \2 (az Eclipse editoraban $2) a line number, \3 a file name es \4 a description. De nem megy :-(
/sza2
Ugy tunik, mintha az "'R1': undefined identifier"-ben levo "'" (aposztrof) zavarna meg. Ahol nem "'" van a description elejen, oda raugrik...
Ezt hogy tudnam kikuszobolni?
/sza2
szerk.: vagyis inkabb a ket kettospont korul lesz a hiba...
(.+): a "HELLO.C: 'R1':" sztringre illeszkedik. A ? modosito megoldhatja a problemat, ha az eclipse plugin regexp-je ismeri. Tehat (.+) helyett (.+?)
Nekem a CDT-n a következő alatt van:
Ablak > Beállítások > C++ > Build.
Így néz ki: http://img855.imageshack.us/img855/5311/eclipsecdterrorparse.png
Ha nem jó a CDT a projektedhez, a kódját attól még szerintem felhasználhatod a saját pluginodhoz.
--
The Elder Scrolls V: Skyrim