Moi!
Olen tässä kehitellyt c++:lla ihan harjoitusmielessä ohjelmaa, joka valmistaa c-koodista objektitiedostoja ja sitten pakkaa ne. Toinen ohjelma (jota en vielä ole kehittänyt) sitten purkaa paketin, linkkaa objektitiedostot ja suorittaa ohjelman. Porttaan myöhemmin ohjelman myös Linuxille. Windows-versio onkin ongelmallinen. Siinä kutsutaan forfiles-ohjelmaa, mutta se ei suostukaan käsittelemään parametreja. Forfilesin sisäisen ohjeen avulla saa seuraavan kutsun:
forfiles /m *.c /p C:\polku\ /c "C:\MinGW32\bin\gcc.exe -c @FILE -o C:\polku\@FNAME.o"
Mutta se valittaa "-c: CreateProcess: No such file or directory".
Jos katsoo netistä ohjeita (ei Microsoftin sivuilta), saa aivan samanlaisen kutsun, paitsi /c:n ja lainausmerkeissä olevan komennon väliin ei tule välilyöntiä. Tällöin forfiles kuitenkin sanoo "VIRHE: Argumentti tai valitsin ei kelpaa - /cC:\MinGW32\bin\gcc -c @FILE -o C:\polku\@FNAME.o."
Mikä voisi olla vikana?
Kokeilehan antaa komento tähän tapaan:
forfiles /m *.c /c "cmd /c gcc -c @FILE -o @FNAME.o"
"Argumentti tai valitsin ei kelpaa: /ccmd /c ..."
Eli sama mikä ennenkin. Eli forfiles käynnistyy, mutta ei ymmärrä parametria.
Aihe on jo aika vanha, joten et voi enää vastata siihen.