-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
C fordító hiba? #89
Comments
Szerintem inkább a -march=native -mtune=native okozza a gondot, mivel ez készít natív, azaz az adott CPU-ra optimalizált kódot. |
Ezt nem lehet az AMD processzorok hibájának, vagy egyes INTEL processzorok hibájául felróni, mert ez az illegális utasítási hiba már jelentkezett más progiknál is, nem csak AMD procin, hanem INTEL procin is. Volt egy időszak, mikor az O3 optomatizációt kellett kicserélni O2-re, amit abbahagytunk egy ideje, az Ofast típust nem is néztük sohase. |
A trigger-rally appimage sem indul ezen a masinán. |
Az etl flathubos változata vígan megy minden rendszeremen. Az etlagacy csomagunk már elérhetetlen nagyon helyesen. |
#89 (comment) |
Ezt a teljes full rebuild sem hozta helyre, ami várható volt. |
Épeszű fejlesztő nem tesz ilyet. Amúgy pedig az OPTIMS felülbírálható, tehát egy 'ub_make OPTIMS=' elvileg helyrerakja. |
No meg akkor jön az, ami anno a python2-nél volt, hogy nem mindegy, ki fordítja? Hagyjuk már. |
#89 (comment) |
Én biztos, hogy pl. egy trigger-rally, vagy vice esetében nem nézek ilyesmit. Nekem emulátorból elég a virtualbox, a játékokból pedig a tsc és a zaz, bár gondolkozom rajta, hogy kidobom őket. Van gond és nyűg épp elég a játékok és emulátorok spéci hülyeségei nélkül is. |
A trigger rally appimage az Intel GPU-s masinán sem megy, a csomagunk is illegális utasítást észlel. Nyilván az appimage is más CPU -val készült, mással, mint amik nekem vannak. Ha meg akarjuk tartani, akkor ki kell belőle irtani ezt a beleégetett optimatizálást. Én képtelen vagyok leellenőrizni az eredményt, mivel nekem más CPU -im vannak, és nem a saját gépemre fordítok csomagot, így, módosítás nélkül az egész játék kuka! |
Te vagy az egyetlen, aki ilyen gondot jelzett, szóval nyugodtan lefordíthatod magadnak. |
Lehet, hogy más meg sem próbálta a trigger-rally-t. Én nem használom, alig van egy-két játék, amit használok, nekem nem kell. Maradjon felőlem úgy ahogy van. Ha valakinek majd problémája akad, vele, akkor majd jelzi. |
Én úgy látom, hogy a 2 játék sor, a 03-16 (emuátorok), és a 03-12 (development) tele van olyan cuccokkal, amiket senki nem használ. Szóval ezeket simán lehetne ritkítani. |
Felőlem kihajíthatod mind, én nem teszem. A választék bővítésére vannak csupán, sokan fáradoztak valaha a csomagok elkészítésével és nem csupán saját célra. |
Akkor úgy lesz. Nem működő cuccoknak nincs értelme. Ha a trigger-rally fordításának módosításához is én kellek, akkor hadd döntsek arról, akarok-e foglalkozni vele. |
A trigger-rally-t módosítottam, csomagot felraktam. aa14c4a |
A tulip is kidobandó! Az intel dual CPU-n ez van: For help, type "help". Thread 1 "tulip" received signal SIGILL, Illegal instruction.
Quit anyway? (y or n) y |
Véletlen futottam be ebbe a tulip gondba, a frissebb és ezen a gépen fordítoitt simán megy. Talán a te laptottyodon megy a tárolónéli, ha nem, akkor neked is laptottyot kell cserélni mert ez a hiba nindenképp CPU güggő kód opimalizálási gond. A másik lehetőség, hogy sorravesszük az összes csomagot, és amelyik illegális utasításba fut, azt mind kidobjuk. |
Vagy el kell felejteni az -march=k8 gcc opciót. Az is simán okozhat gondokat, és talán a debian használja csak. Nálam amúgy megy, de gőzöm sincs, mire való. Akár ki is dobhatjuk. |
Nekem sem kell ez a tulip, de valami épeszűt ki kellene találni erre az optimatizációra, mert bármikor bárki belefuthat bármelyik csomagnál, aki nem épp az ő gépére fordítottat használja. Úgy vélem, hogy a programok karbantarói, fejlesztő csak arra koncentrálnak, hogy mindenki a saját gépére fordítja az ápoltjukat. |
A mostani helyzetnek egy előnye azért van: így mindjárt kiderül, ha egy csomag nem szükséges / nem megfelelő opciókat használ alapból / túl problémás. |
"Persze az igazi kérdés az, hogy ugyanaz (?) az uhubuild ugyanazzal a gcc-vel és alap opciókkal miért készít más kódot? |
Nem maga a cmake a gond, hanem az, hogy nem autotools-os a cucc. |
Erről a tulip-ról már volt egy issue-m. Volt még egy rakás másról is, ami épp a kezem ügyébe került. (VICE, eduke32, openttd, satöbbi ) |
Jut eszembe: rengeteg cmake-s cucc van, ami teljesen jó, ilyen pl. a teljes kde és lxqt. Szóval nem itt lesz a hiba. |
A saját gépemen fordított példány simán megy, mivel az én gépemben más a CPU, mint azon, amelyen a letölthető kód készült!
Van egy ilyen sor a trigger-rally/src/GNUMakefile fájlban:
OPTIMS ?= -march=native -mtune=native -Ofast
Ezek szerint a -Ofast optimatizációval a generált kód nem minden CPU által értelmezhető!
The text was updated successfully, but these errors were encountered: