Portál AbcLinuxu, 6. května 2025 05:36
Hledám někoho ochotného, kdo by mi otestoval program (takovou kalkulačku pro CLI) na solarisu. Pokud se takový najde, tak jestli by mi sem nehodil e-mail a já bych mu poslal zdrojáky. Děkuju.
A nebo ne
12.7. jsem odevzdal semestrálku (jelikož mi cvičící v progtestu nezměnil vybrané téma, tak jsem musel dělat místo kreslení grafu kalkulačku), byl jsem ve frontě na 3. místě a včera jsem se dočkal:Vas zdrojovy kod nejde prelozit (zkouseno na Sunech): src/Core/Utils.cpp:40: error: integer constant is too large for "long" type src/Core/Utils.cpp:41: error: integer constant is too large for "long" type src/Core/Utils.cpp:42: error: integer constant is too large for "long" type src/Core/Utils.cpp:43: error: integer constant is too large for "long" type src/Core/Utils.cpp: In constructor `Core::Double::DoubleInitializer::DoubleInitializer()': src/Core/Utils.cpp:40: error: `__UINT64_C' undeclared (first use this function) src/Core/Utils.cpp:40: error: (Each undeclared identifier is reported only once for each function it appears in.) s int 64b je problem, pokud nejste na ILP64 platforme (vetsinou jste na I32LP64 nebo dokonce na ILP32). Aby spravne fungovaly 64 bit celocislene literaly (konstanty), musi se k nim pridat suffix LL (gcc) nebo i64 (msvc). Cili se dela neco jako: #ifdef __GNUC__ #define I64_CONST(X) X ## LL #elif defined( _MSC_VER ) #define I64_CONST(X) X ## i64 #else #error "unknown compiler, i64 support ??" #endif a pak napisete neco jako: ... I64_CONST(0x7fffffffffffffff) Toto bych Vam ani nevytykal a v praci bych si to opravil. Co ale opravovat neumim/nebudu je pouziti makra __UINT64_C. Prosim, opravte zdrojak, zkuste to na Sunech a odevzdejte praci znovu.
Proč tam asi bylo to __UINT64_C
a před includováním souboru stdint.h
definováno __STDC_LIMIT_MACROS
. Proč to sakra neni v tom solarisu definovaný taky. No co, udělal jsem tam ten "hack", zkusil zkompilovat kromě GCC i ve Visual Studiu, kde to taky funguje. Jestli to teď neprojde na jeho testovací mašině, tak jsem sice v řiti, ale věnuji vám prográmek (i ten kreslič grafů, má to stejné "jádro"), třeba se někomu bude hodit.
Pomalu mě tahle kompatibilita začíná tamto. Sice pořád nadávám na javu, ale tam alespoň neřeším takovýhle prkotiny (ale zase řeším jiné )
Tiskni
Sdílej:
Das Virtualbox nicht?
Ono to jde těžko, když např. máte hodného cvičícího, který vám ani během semestru neodpoví na jediný e-mail a když na vás při výuce dýchne, tak je z něj cítit (nechci být nezdvořilí) alkohol.Mozno si iba cistil zub slivovicou...
...ale nejaky Vagner.
Tak tohle už je fakt moc... Dalo by se ještě pochopit, že někdo neví, že Sunraye jsou normálně přístupný přes SSH, ale že někdo nemá tušení kdo učí danej předmět, to už je na pováženou. A že zrovna Vágner je na výpočetce už prakticky legendou (těžko hledat na katedře lepšího* učitele než on).
Na druhou stranu co se Müllera týče, tak s tim mám taky poněkud svérazný zkušenosti. Když jsem byl na Erasmu a přijel jsem na skok do ČR m.j. vyřizovat nějaký studijní záležitosti, extra jsem do Prahy cestoval tak, abych stihl jeho konzultační hodiny (byl tenkrát proděkan pro studijní záležitosti + ERASMUS). Jaké bylo moje překvapení, když mi sekretářka na studijnim oznámila: "Ale pan Müller tady není, on učí". "Ale vždyť má teď konzultační hodiny, má to tady i napsaný na dveřích" nenechám se jen tak odradit. "To já vím, ale každou středu touhle dobou pan Müller učí", uzemňuje mě sekretářka...
* Tím ovšem ani omylem nemyslím "nenáročnějšího"!
Ale jo, to mi můžem, ale kdo by o prázdninách jezdil do školy dělat semestrálku, když ji může udělat doma.Ten kdo si ji neudělal během semestru? Můžeš to brát jako cennou zkušenost, jednu z věcí které si ze školy odneseš ačkoliv není v žádném studijním plánu: když plánuješ věci stylem "to udělám potom, až bude spousta času", tak se to může docela zkomplikovat.
math.h
.
vidim tam HUGE_VAL, to by mohlo být ono, je to standard?tyto veci jsou podle standardu C99 takze asi ano...
solaris je taky horlavy autobus, ze?
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.