Mentat 2010
MSC. Szoftver szimulációs megoldások
MSC.Marc Mentat 2010.2/Módosítsa a Fortran fordító (ifort) paramétereit

Hozzájárulások: 8
Regisztrált: 2010. április 12
következő probléma:
Létrehoztam egy statikus könyvtárat, és ezt szeretném beépíteni a usersub (hypela2) összeállításakor. Ebből a célból az útvonalat rendszerint az -I PATH paranccsal adják át a fordítónak. Opcionálisan azt is szeretném, ha a userub-ot az -O3-mal (optimalizálás) fordítanám. Ennek ellenére nincs root jogom a run_marc ilyen hatású szerkesztésére (a run_marc kb. 2807. sorból állítja össze a userubokat). Ezenkívül a run_marc módosítása nem lenne célszerű, mivel a usersub csak korlátozott mértékben lenne hordozható.
A "statikus könyvtár" problémájának megoldása az LD_LIBRARY_PATH környezeti változó módosítása lenne, de ezt a portolásnál is figyelembe kellene venni.
Vagy van-e lehetőség a Marcban objektumfájlok importálására a fortran fájlok helyett, vagyis átveszi a fordítást Marc számára?
[Ezt az üzenetet Sheeepy szerkesztette 2011. október 14-én.]
[Ezt az üzenetet Sheeepy szerkesztette 2011. október 14-én.]
Hozzájárulások: 773
Regisztrált: 2008. december 13
Hozzájárulások: 8
Regisztrált: 2010. április 12
A run_marc fájlban a fordítást két változó segítségével hajtják végre:
$ FORTRAN $ usersub
Nem tudom teljesen megérteni (mivel nem tudom szerkeszteni a run_marc-ot), honnan származik a $ FORTRAN. Esetleg beavatkozhat a változó létrehozásakor, hogy paramétereket adjon hozzá.
Hozzájárulások: 8
Regisztrált: 2010. április 12
Tehát kicsit átkutattam a Marc könyvtárakat:
található: ./marc20102./tools/include_linux64
.
FCOMP = ifort
.
FORTRAN = "$ FCOMP -c -tervezés byterecl -safe_cray_ptr $ PROFILE -save -zero -mp -WB -w90 -O1 $ I8FFLAGS -I $ MARC_SOURCE/common \
-I $ MARC_SOURCE/bcssolver/common -I $ MARC_SOURCE/mumpssolver/include $ I8DEFINES -DLinux -DLINUX -DLinux_intel $ FDEFINES $ DDM $ SOLVERFLAGS "
.
azaz az -O3-at egyszerűen $ FORTHIGH-t kellene írni $ FORTRAN helyett, de csak akkor, ha a run_marc feldolgozható.
A run_marc fejlécében:
# -u * felhasználói felhasználói szubrutin. . . #
# -obj obj felhasználói objektumok vagy könyvtárak. . . #
Tehát a felhasználói objektum fájloknak is működniük kell (gondolom)
Tehát lehet. a statikus könyvtár integrálható, vagy ha szükséges, önállóan összeállított usersub. Azonban kíváncsi vagyok, hogy ezt hol állíthatom be Mentatban. Mivel jelenleg amúgy is az ssh-n dolgozom, közvetlenül a run_marc programot kezdem. Érdekes lenne azonban, hogy a Mentatban hol határozhatnám meg ezt?
Új szakmai kihívást keres, és szeretne egyet tisztességes és személyes toborzás felvenni a kapcsolatot? miattunk sok éves tapasztalattal A mara Personalservice GmbH a megfelelő kapcsolat.
Hozzájárulások: 8
Regisztrált: 2010. április 12
Megoldás:
Fordítsa le maga a usersub (ifort -c usersub.f) fájlt, és az objektumfájlt az -obj (-obj usersub.o) run_marc paraméter segítségével adja meg.
Azt azonban nem tudom, hogy ez hogyan működik a Mentat GUI-n keresztül.
Számomra (eddig) ez tűnik a legjobb megoldásnak.