Kirjoittaja |
Viesti |
JPQ
| Keskiviikkona, 13. lokakuuta, 2004 - klo 11.04: | | yritän kääntää tätä softaa joka on ansi ctä http://www.cybercom.net/~dcoffin/dcraw/ Kääntö sujuu kun karsin JPEG tuen mutta kun yritän Canonin (Powershot Pro1) RAW kuvaa muntaa PPMän muotoon niin kaikki muut vaiheet sujuu täysin mutta talletuksessa se saa tiedoston auki mutta edes neljä tuntia myöhemmin tiedosto ei ole kiinni,jokin siis mättää yksi teoria on jota toki kokeilen kohta. Seurauksena sitä luotua tiedostoa ei saa auki. Joten voisiko joku asiantuntevampi katsoa tuota lähdekoodia joka mitä ilmeisemmin toimii linuxissa oikein sillähän se on kehitettykin ? ja toiminee kait windowsissakin hyvin. PS. minulla ei "Poistu" morphos versio unraristakaan. (Sitä en ole itse kääntänyt) Joten tulee mieleen onko ansic puoli rikki gccstä vai mikä ihme tässä on. Nimimerkki halua olisi kuvata myös RAWiksi mutta työkalu hankaloittaa hommaa.
|
JPQ
| Keskiviikkona, 13. lokakuuta, 2004 - klo 11.59: | | Nyt toimii kait muuten ok (24bit ppm kuvien osalta photoshopin muodolle ja 48bit ppmälle en tehnyt modausta vielä) mutta ohjelma ei lopeta itseään kun nn tehtävä on tehty ja sama ongelma vaivaa minulla myös unrar ohjelmaa jota en itse ole kääntänyt. Eli jossain on pielessä jotain mutta mitä ja missä ei ole kivaa ottaa uutta shelliä jokaista kuvaa tai pakettia (jos unrar huomioidaan myös) varten. PS. tein sellaiset muutokset että tiedosto suljetaan tietyssä kohtaa kun alkuperäistä sulkukohtaa en löytänyt ja ratkaisi olettavasti edes osan ongelmastani. Aika kivaa se on näinkin mutta silti todellakin turhauttavaa.
|
Jon
| Keskiviikkona, 13. lokakuuta, 2004 - klo 13.17: | | No debuggaa menemään, hyvä mies Laita vaikka printf:ää tai vastaavaa avainkohtiin niin tiedät missä mennään.
|
miksuh
| Keskiviikkona, 13. lokakuuta, 2004 - klo 14.25: | | Ömh.. En ehdi tota just nyt kovin tarkkaan katsoa, mutta eikös se tiedoston sulkukohta ole tossa ihan main funktion lopussa just ennen cleanup: labelia. Ainakin äkkiseltään toi näyttäs siltä. Tiedosto avataan tässä: ofp = fopen (ofname, "wb"); if (!ofp) { status = 1; perror(ofname); goto cleanup; } Täsä ilmeisesti kutsutaan funktiota, mikä tekee tiedostoon tallennuksen: if (verbose) fprintf (stderr, "Writing data to %s...\n", ofname); (*write_fun)(ofp); Ja tässä se tiedosto suljetaan: if (ofp != stdout) fclose(ofp); cleanup:
|
miksuh
| Keskiviikkona, 13. lokakuuta, 2004 - klo 14.26: | | Hyi yök, joku käyttää vielä gotoa..
|
miksuh
| Keskiviikkona, 13. lokakuuta, 2004 - klo 14.48: | | Toimiiko tämä MOS:ssa ? if (ofp != stdout) fclose(ofp); Jos tiedosto ei jostain syystä sulkeudu, niin ehkä se tökkää tohon ? Mut jos ohjelma ei edes lopu, niin ehkä se jää silmukkaan jossain kohtaa... En tiedä, ei tosiaan ehdi tota nyt katsoa tarkemmin.
|
JPQ
| Keskiviikkona, 13. lokakuuta, 2004 - klo 15.37: | | Jon: siinä ongelmana se että miten varmistan ettei printf kirjoita tiedostoon vaan aina ruudulle?
|
miksuh
| Keskiviikkona, 13. lokakuuta, 2004 - klo 15.46: | | printf ei tulosta tiedostoon, vaan standardi tulostusvirtaan (stdout), eli se siis tulostaa aina ruudulle. Tiedostoon voi tulostaa fprintf() funktiolla.
|
miksuh
| Keskiviikkona, 13. lokakuuta, 2004 - klo 15.50: | | Siis olettaen ettei käyttäjä itse ohjaa tulostusta tiedostoon.
|
JPQ
| Keskiviikkona, 13. lokakuuta, 2004 - klo 15.55: | | miksuh: viimeisellä viestilläsi tarkoitanet tyyliä puuhamaa.exe >SER: ? PS. unohdin tuon printf jutun...
|
miksuh
| Keskiviikkona, 13. lokakuuta, 2004 - klo 16.04: | | fprintf() funktiolla voi toki tulostaa muuallekin kuin tiedostoon, kohteeksi voi laittaa esim stderr, kuten tossa ylläkin lähdekoodissas on. Stderr on siis tulostusvirta, mihin yleensä ohjataan virheilmotukset jne.
|
miksuh
| Keskiviikkona, 13. lokakuuta, 2004 - klo 16.04: | | JPQ: jeps tuota tarkotin juurikin.
|
JPQ
| Keskiviikkona, 13. lokakuuta, 2004 - klo 19.58: | | Todellakin kummaa koodia nyt ei millään edes halua kääntyä illegal argument just joo... varmasti kätevä softa ja vieläpä ainakin osalla digikameroista ilmeisesti parempi kuin valmistajan softa että jotain tarttisi tehdä ja pian.
|
JPQ
| Keskiviikkona, 13. lokakuuta, 2004 - klo 20.06: | | no eipä helloworldikaan halua... joten täytyy kait sdk pistää uusiksi mutta mikä hitto sitä vaivaa...
|
JPQ
| Keskiviikkona, 13. lokakuuta, 2004 - klo 20.54: | | no tein resetin sdk toimii ok jälleen mutta nyt takaisin ongelma koodiin eli write_ppmän lopussa on free(ppm); kohta laitoin koodin printfällä tulostamaan merkkijonon ennen tuota kohtaa ja sen jälkeen eli tyyli on printf("kohta tulee free(ppm);"); free(ppm); printf("free(ppm); suoritettiin"); ja kappas kumpikaan teksti rivi ei tulostu joten jossain on jotain pielessä ja pahasti.
|
JPQ
| Keskiviikkona, 13. lokakuuta, 2004 - klo 20.56: | | Joten jatkaamme tutkimuksia jos vain suinkin viitsisitte. PS. menee kohta hermot...
|
antime
| Keskiviikkona, 13. lokakuuta, 2004 - klo 21.10: | | Jos printf:ää aiot käyttää debuggaukseen, muista myös laittaa fflush(stdout) jokaisen tulostuksen jälkeen.
|
Jon
| Keskiviikkona, 13. lokakuuta, 2004 - klo 21.15: | | Riittäiskö keno-N, eli tuttavallisesti \n?
|
itix
| Keskiviikkona, 13. lokakuuta, 2004 - klo 21.50: | | printf() (useimmiten) bufferoi tulostuksen jos tekstissä ei ole rivinvaihtoja.
|
JPQ
| Keskiviikkona, 13. lokakuuta, 2004 - klo 22.08: | | antime: mitäs tuo fflush(stdout) auttaa? vai tyhjääkös se tuon itixin sanoman bufferin? itix: täytyy tutkia tuokin vielä.
|
Jupp3
| Torstaina, 14. lokakuuta, 2004 - klo 10.36: | | JPQ: Ja jos tarvit, niin tätäkin kannattanee testata: int a = 5; printf("a:n arvo on %d\n",a); (huom! Tuo %d toimii vain kokonaisluvuilla!)
|
antime
| Torstaina, 14. lokakuuta, 2004 - klo 10.47: | | JPQ: Jeps. Toinen vaihtoehto on pakottaa puskuroinnin pois käytöstä: setbuf(stdout, NULL);
|
JPQ
| Torstaina, 14. lokakuuta, 2004 - klo 11.25: | | Jupp3: tiedän jotain muistan vaikka aika alussa olenkin. antime: kiitos kohta kun katson classicilla eräät jutut rupean tuota koodia katselemaan.
|
miksuh
| Torstaina, 14. lokakuuta, 2004 - klo 12.08: | | Eiks se nyt ole yksinkertasempaa laittaa niitä rivinvaihtoja sinne Kyse on kuitenki debuggauksesta, eli varmaan kievempi kirjottaa mahdollisimman vähän sen takia
|
JPQ
| Torstaina, 14. lokakuuta, 2004 - klo 12.51: | | miksuh: noin minä teinkin ja havaitsin että mielestäni ihan sama koodi heitti tiedoston ok talteen mutta nyt taasen ei lisäsin koodiin sinne päin minne edelliset viat viittaavat parit printfät nyt ei edes ellisen kerran 3kpl tule ruudulle eli noin rivillä 3907 oleva cleanup tuntuu olevan että onko se ongelmamme nimi tai välillä tuntuu ettei ongelma ole tässä koodissa vaan gcceessä. ja samanlaisesta ongelmasta ettei ohjelma lopu tosiaan kärsii ainakin täällä unrar jota en siis ole itse kääntänyt. ja tämäkin koodi kait toimii linukassa oikein hyvin (kehittäjä käyttää linukkaa...) joten jotain ihmettä tässä täytyy olla.
|
miksuh
| Torstaina, 14. lokakuuta, 2004 - klo 13.00: | | Mistäs mä löydän jonkun kuvan testitiedostoksi? Voin kokeilla kääntää ton alkuperösen koodin kotona ja kattoa toimisko se mulla.
|
JPQ
| Torstaina, 14. lokakuuta, 2004 - klo 13.33: | | miksuh: no täältä eli minulta löytyy tulee vaan aika iso liite tiedosto sitten eli jotain 8megaa karkeasti ilman emailin liitetiedostojen koodausta tai pakkausta jota toki myös yritän. Ja kokeile sitäkin jos viitsit loppuuko morphos natiivi unrar sinulla nätisti ? (siihenkin tarttisit rar paketin ja sellaista ei ole sinulle vältämättä pistää) PS. koodi tuntuu toimivan joskus paremmin eli joskus tuon luoman datan saa auki joskus tulee vain 0 tavuinen tiedosto ja jotenkin alan olla varma että tiedoston sulkeminen mättää koodissa kun sen jälkeiset "debug rivit" eivät tulostu.
|
JPQ
| Torstaina, 14. lokakuuta, 2004 - klo 13.34: | | Jaha tuo testikuva ei lha pakkaudu eli joten tulee tosiaan iso liite.
|
miksuh
| Torstaina, 14. lokakuuta, 2004 - klo 13.36: | | Liitetiedoston koko ei ole ongelma, mailiboksiin mahtuu kyllä ja CDRW levylle myös
|
miksuh
| Torstaina, 14. lokakuuta, 2004 - klo 13.37: | | JPQ: Mulla ei ole MOS:a, kun ei ole Pegasosta Mut voin testata koodin kääntynistä 060:n kanssa ja katsoa onko siinä itsessään jotain outoa.
|
miksuh
| Torstaina, 14. lokakuuta, 2004 - klo 13.40: | | Kääntymistä ja tota tallennusta. Tietty voit heittää mulle sen sun muokkaamankin koodin jos haluat että katon mikä vois olla ongelmana. Mut mä en tietenkään voi sanoa MOS kääntäjään jne liittyen mitään..
|
JPQ
| Torstaina, 14. lokakuuta, 2004 - klo 13.46: | | miksuh: mailin piti lähteä juuri. Jollei toinen sähköpostini mätä. Viimeksi ei ainakaan mättänyt isoilla liitteillä toisin kuin mbnet.
|
JPQ
| Torstaina, 14. lokakuuta, 2004 - klo 13.49: | | miksuh: ainakaan hisoft c++ ei sisällä eräitä includeita muuten olisin itse 060 kääntöä yrittänyt eikä ole tiloja Classicilla GCCelle eikä taitoa edes asentaa sitä. Enkä VBCCtä ole vielä kokeillut missään voisinkin ladata sen MOSille ja kokeilla. Ainoa mun muokkaus minkä tein siksi että tuo kääntyy määrittelin oliko no_jpegin (asiasta on koodin alussa juttua) joka sitä varten ettei erästä jpeg kirjastoa tarvita.(en jaksanut ruvata noin paljon säätämään...)
|
JPQ
| Torstaina, 14. lokakuuta, 2004 - klo 13.54: | | miksuh: unohtui sanoa kiitos siitä yrität auttaa koska asia voi vaikuttaa classicin ja pegan softa tarjontaan ja toki myös amigaonejen jos joku porttaa softani jonka toteutuminen riippuu siitä onnistuuko tämä yksi vaihe (vaikein sanoisin guin lisäksi) saada toimimaan. PS. toki myös bisneksiini ihan muulla kuin ohjelmoinnin puolella.
|
miksuh
| Torstaina, 14. lokakuuta, 2004 - klo 14.05: | | Eipä tosta mitäöän vaivaa ole GCC:llä aattelin yrittää kääntää ton, eli eiköhän sen pitäs onnistua.
|
miksuh
| Torstaina, 14. lokakuuta, 2004 - klo 14.16: | | JPQ: Maili näyttäs tulleen perille, katon illalla tota kun olen kotona. Nyt just oon koululla, ja kohta pitäs mennä ohjelmointiluennoille.
|
antime
| Torstaina, 14. lokakuuta, 2004 - klo 14.17: | | miksuh: Tietääkseni ei ole missään määritelty että rivinvaihto tyhjentäisi puskurit, ja muistelen että olen joskus kovasti ihmetellyt puuttuvia viestejä ennen kun otin stdoutista puskuroinnin pois.
|
miksuh
| Torstaina, 14. lokakuuta, 2004 - klo 16.29: | | Juu ei sitä kai ole missään määritelty, mutta ainakin itselläni on toiminut ihan ok. Toki sitten jos printf-lauseet on tarkotus jättää sinne ohjelmaan pysyvästi on parempi heittää perään fflush, mutta tilapäisessä bukin metsästyksessä en ole yleensä jaksanut niitä sinne kirjottaa. En kuitenkaan jättäs niitä printf("Plaah\n"); .."plimplom\n".. .."toimis ny\n".. jne rivejä sinne
|
miksuh
| Torstaina, 14. lokakuuta, 2004 - klo 19.55: | | JPQ: Huomasin just, että mailit itse tuli perille, mut näyttäs ihan kun liitetiedosto ei olis tullu.. Tai sitten toi koulun uus webmaili bukittaa.. Olen vielä tääl koululla ja just meinasin tallettaa sen kuvan ennenku lähen kotii..
|
JPQ
| Torstaina, 14. lokakuuta, 2004 - klo 22.27: | | miksuh: voi visva täytyy tutkia jos sen saisin kotisivulleni jotenkin haettaville. Tai eräitä muita juttuja mutta nyt väsyttää liikaa joten jää minun takia perjantaihin. Eli katson kääntyykö tuo paremmin VBCCeellä jos saan sen morphosiin asennettua.
|
JPQ
| Torstaina, 14. lokakuuta, 2004 - klo 23.27: | | Virkistyin hieman tosin vielä en jaksanut VBCC paketin kanssa tapella joten täytyy tässä koekilla jotain muuta...
|
JPQ
| Perjantaina, 15. lokakuuta, 2004 - klo 0.45: | | miksuh: yritin uudestaan mailin kanssa ja lähetin sen myös itselleni jolla tarkistin etten itse kämminyt.
|
JPQ
| Maanantaina, 18. lokakuuta, 2004 - klo 13.41: | | Miksuh: voimme varmaaankin tehdä näinkin eli käännät koodin ja kokeilen ajettavaa itse.
|
JPQ
| Maanantaina, 18. lokakuuta, 2004 - klo 13.43: | | Ja ai niin käyttääkö tässä ketjussa esiintyvistä kukaan muu kuin minä unraria morphosilla ? jos niin loppuuko ohjelma normaalisti jos niin jotain on mulla pielessä jos käytämme samaa unrar versiota kun minulla ei lopu. PS. VBCC tappelun kanssa tuli erään headeri fileen uupuminenkin ongelmaksi joten se saa jäädä odottamaan.
|
JPQ
| Maanantaina, 18. lokakuuta, 2004 - klo 16.20: | | Kokeilimme kaverin kääntämää ajettavaa jonka hän käänsi windows32 konsoli softaksi Visual Studio 6:sella ja kappas toimii niin kuin pitää eli onko GCC vieläkin rikki jostain? tosiaan tuo unrar juttukin hämää eli mikähän ihme tässä on...
|
JPQ
| Maanantaina, 18. lokakuuta, 2004 - klo 16.32: | | Ja minuun saa yhteyden sähköpostilla joka on tässä viestissä. PS. menee kohta hermot että miten näin helppo juttu voi olla näin ongelmallinen.
|
Jon
| Maanantaina, 18. lokakuuta, 2004 - klo 16.49: | | Sanoisin, että Visual Studio 6 on enemmän rikki kuin GCC jos standardeista puhutaan Mutta hei, laita mulla sorsat ja pikku kuva paketissa niin kokeilen GCC 3.4:lla.
|
JPQ
| Maanantaina, 18. lokakuuta, 2004 - klo 19.52: | | Jon: aha ja pistin postia. Ja voi olla että enempi rikki mutta miltä osin. tosiaan tuo UNRAR temppuilee myös samaan tyyliin.
|
Frn
| Maanantaina, 18. lokakuuta, 2004 - klo 20.08: | | JPQ: Mulla taisi myös olla samainen ongelma tuon unrarin kanssa MorphOS:lla.
|
JPQ
| Maanantaina, 18. lokakuuta, 2004 - klo 20.47: | | Frn: mukava kuulla osin mutta toisessa mielessä ei mukava.
|
JPQ
| Tiistaina, 19. lokakuuta, 2004 - klo 1.30: | | Täällä on teille vihdoin RAW http://koti.mbnet.fi/~jpq/CRW_1905.CRW linkki kopioitu käsin toivon etten typota.
|
JPQ
| Tiistaina, 19. lokakuuta, 2004 - klo 13.53: | | Voi rahvattu kokeilin tuota Jonin käännöstä MorphOSissa (se kylläkin 68k AmigaOSille käänetty) mutta sekin näyttää bugaavan ihan samalla tavalla eikun classic amigalla tässä testi jossain välissä. (koodi ajo kestänee vaan julmasti siksei kovin pian... onhan käsiteltävää dataa noin 8megatavua ja tulos dataa 24megatavua) PS. jos siellä silti toimii niin alkaa ärsyttämään ja hirveästi.
|
miksuh
| Perjantaina, 22. lokakuuta, 2004 - klo 11.18: | | Mikäs ton homman tilanne on ? Onko selvinnyt ? Mulla on tenttiviikkot just menossa, siksi en ole täälläkään tän viikon aikana pahemmin ehtinyt käydä.
|
Jon
| Perjantaina, 22. lokakuuta, 2004 - klo 14.36: | | Minä en pystynyt JPQ:n kuvaa testaamaan kun on niin vähän muistia itsellä. Käänsin exen vanhalla GCC:llä M68K:lle.
|
Jon
| Perjantaina, 22. lokakuuta, 2004 - klo 14.38: | | Ainiin, JPQ: kokeiles sitten Snoopiumin kanssa miten käy
|
JPQ
| Perjantaina, 22. lokakuuta, 2004 - klo 15.25: | | miksuh: ei ole olisin kertonut jos olisi ja tuo Jonin 68k ajettava tekee morphosissa saman kuin natiivi käännös. Jon: täytyy katsoa mitä snoopdos sanoo orphosissakin. PS. Tarkoitus oli tutkia juurikin kait tänään asiaa mutta voisin nyt sitä sitten katsoa kun toista kiirettä ei tullutkaan vielä.
|
JPQ
| Perjantaina, 22. lokakuuta, 2004 - klo 15.49: | | Eipä näytä valittavan failia kun siinä kohtaa kun tiedostoa avataan (eli oletan että append epäonnistuu kun tiedostoa ei vielä ole) mutta sinne kirjoitus sujuu silti. Tänään kirjoitti ihan nätisti mulle tiedoston annetusta RAWista mutta ongelma on siinä ettei nytkään ohjelma tarvitun operaation jälkeen lopu mitenkään. Joten sanoisin karkeasti pahin vika on ohjelman loppupuolella jossain. Ja ilmeisesti aika MorphOS spefinen jollei AmigaOSissa käy samaa kun testaan kun jaksan. Kun Linuxissa kait toimii ok koska sieltä kotoisin ,windowsissa toimii ok.
|
JPQ
| Perjantaina, 22. lokakuuta, 2004 - klo 16.20: | | Jon: kokelin snoopdosilla kylläkin kun snoopiumia en ihan heti löytänyt (latasin sen jo kylläkin) mutta en ysko tuossa kamalan suurta eroa tulee. PS. miten ihmeessä te jaksatte muittaa guit... jopa natiivin käsin naputtelu tuntuu hirveältä ajatukselta...
|