Portál AbcLinuxu, 11. května 2024 04:17

ANSYS 16.2 a 17.0 na nepodporované distribuci

13.11.2015 17:06 | Přečteno: 2332× | Linuxení aneb hrátky se šrotem | poslední úprava: 4.10.2016 11:03

...a onou distribucí je v tomto případě Debian Jessie...

Nedávno se nám dostalo toho štěstí, že nám naši blahorodí koupili čerstvé licence ANSYSu 16.2 s integrovaným Maxwellem. Jelikož nepoužívám ani jednu z těch správných a podporovaných distribucí™, nezbylo mi než na vlastní pěst postupně zprovoznit kompletní ANSYS 16.2 na "nepodporované distribuci". Ještě před samotným popisem celého postupu si ale shrňme obecně známé bugy, kterými ANSYS i Maxwell ještě na konci roku 2015 trpí:

Těchto základních chyb je třeba se vyvarovat ještě před instalací ANSYSu a Maxwellu, tj. instalační adresář musí mít triviální název a ani instalační soubory nesmí být uloženy v adresářích s podobnými vadami na kráse.

ANSYS 16.2

ANSYS 16.2 se dodává pro Linux ve formě tří ISO souborů, které stačí tradičním způsobem připojit do libovolného mountpointu a z prvního ISO souboru spustit instalační skript INSTALL. Ten spustí instalátor napsaný nejspíše v openmotifu, který si postupně vyžádá zbylé ISO soubory a podle Vaší licence nainstaluje vybrané komponenty.

Zde mne překvapilo jak vše proběhlo hladce - dá se říci, že jak klasický "černý" ANSYS Mechanical APDL, tak i ANSYS Workbench a jeho komponenty fungují out-of-the-box včetně OpenGL akcelerace. Jedinými vdami na kráse jsou zde již dříve zmíněné bugy a fakt, že ANSYS Mechanical (ten ve Workbenchi) poměrně často po spuštění padá. Perlou pak je, že kromě "rozcestníku" ANSYSu Workbenche, který je jen spíše napsaný v Qt, je zbytek jakýmsi kompilátem pravděpodobně s pomocí knihoven WINE a neumí pracovat se dvěma monitory. Při pokusu o maximalizaci okna se okno roztáhne přes oba monitory a dialogy se zobrazují přesně na hranici mezi monitory.

ANSYS Mechanical APDL na Linuxu ANSYS Workbench na Linuxu ANSYS Mechanical na Linuxu

Maxwell 2015.2

Zde se již autoři vyřádili trochu více, a tak je třeba s Maxwellem trochu laborovat. Maxwell se již nedodává v ISO obrazu, ale jako ZIP archiv. Po jeho rozbalení můžete rovnou smazat adresář /lib64 v adresáři /Linux. Obsahuje knihovny nekompatibilní s Debianem a namísto nich se při instalaci použijí systémové knihovny. Instalaci pak lze spustit zavoláním ./install.exe (což je docela dobrý vtip :-D) v adresáři /Linux. Nyní lze nainstalovat jednotlivé komponenty Maxwellu.

Maxwell by bylo nyní možné spustit za pomoci skriptu ./maxwell v adresáři AnsysEM16.2/Linux64 Maxwellu. Jenže autoři si zde dali tu práci, aby kontrolovali, za běží na podporované distribuci™. Z Debianu vytvoříme podporovanou distribuci například vytvořením textového souboru /etc/redhat-release s odpovídajícím obsahem. V mém případě postačilo:

echo "Red Hat Enterprise Linux Server release 6.5 (Santiago)" > /etc/redhat-release
Při pokusu o spuštění Maxwellu pak můžete narazit na hlášku, že Maxwell nemůže najít knihovnu libungif.so.4. Tu mu lze podvrhnout například jako symlink na ekvivalentní knihovnu z giflib-tools:
apt-get install giflib-tools
ln -s /usr/lib/x86_64-linux-gnu/libgif.so.4 /usr/lib/x86_64-linux-gnu/libungif.so.4
Nyní by se Vám již měl Maxwell spustit. V tuto chvíli se Vám Maxwell pokusí prolézt RPM databázi a zkontrolovat závislosti. Za sebe tohle považuji za docela drzost od software, který by měl spouštět libovolný uživatel. Odplatou mu budiž to, že logicky na Debianu žádnou RPM databázi nenajde :-) To vyvolá v terminálu následující sadu hlášek:
### Warning: Dependency package bzip2-libs is not installed.
### Warning: Dependency package expat is not installed.
### Warning: Dependency package fontconfig is not installed.
### Warning: Dependency package freetype is not installed.
### Warning: Dependency package giflib is not installed.
### Warning: Dependency package glib2 is not installed.
### Warning: Dependency package glibc is not installed.
### Warning: Dependency package libdrm is not installed.
### Warning: One of the following alternate dependencies are not installed: libjpeg libjpeg-turbo
### Warning: Dependency package libpng is not installed.
### Warning: Dependency package libselinux is not installed.
### Warning: Dependency package libtiff is not installed.
### Warning: Dependency package libX11 is not installed.
### Warning: Dependency package libXau is not installed.
### Warning: Dependency package libxcb is not installed.
### Warning: Dependency package libXdamage is not installed.
### Warning: Dependency package libXext is not installed.
### Warning: Dependency package libXfixes is not installed.
### Warning: Dependency package libXft is not installed.
### Warning: Dependency package libXmu is not installed.
### Warning: Dependency package libXp is not installed.
### Warning: Dependency package libXrender is not installed.
### Warning: Dependency package libXt is not installed.
### Warning: Dependency package libXxf86vm is not installed.
### Warning: Dependency package mesa-dri-drivers is not installed.
### Warning: Dependency package mesa-libGL is not installed.
### Warning: Dependency package mesa-libGLU is not installed.
### Warning: Dependency package nss-softokn-freebl is not installed.
### Warning: Dependency package openmotif is not installed.
### Warning: Dependency package zlib is not installed.
Z těch není třeba si nic dělat. Spouštění Maxwellu ale trvá extrémně dlouho - dejte mu tedy čas.

Maxwell je nyní ještě třeba integrovat do ANSYSu. Zde je třeba spustit skript ./IntegrateWithANSYS162.pl v adresáři AnsysEM16.2/Linux64/scripts. Ten nakopíruje do zadané instalační cesty ANSYSu XML soubory, které jej napojí na Maxwell.

Poslední vadou na kráse je fakt, že OpenGL knihovny, se kterými je dodáván Maxwell nejsou kompatibilní s binárními ovladači nVidia a nelze tedy inicializovat OpenGL výstup, do kterého Maxwell vykresluje i 2D grafy (s binárními ovladači AMD problém není - odzkoušeno na jiném železe). Po delší době, kdy jsem zkoušel předhazovat Maxwellu symlinky na různé systémové knihovny, se mi osvědčilo využití knihoven dodávaných s ANSYSem. Rešením je tedy následující dvojice symlinků:

ln -s /usr/local/share/ansys162/v162/Framework/bin/Linux64/Mesa/libGL.so.1.5.070701 /usr/local/share/ansys162/v162/AnsysEM/AnsysEM16.2/Linux64/libGL.so.1.so
ln -s /usr/local/share/ansys162/v162/Framework/bin/Linux64/Mesa/libGL.so.1.5.070701 /usr/local/share/ansys162/v162/AnsysEM/AnsysEM16.2/Linux64/defer/libGL.so.1
Nyní by již mělo vše běžet.

Maxwell na Linuxu

Poznámka pod čarou

Bohužel, jak jsem pronikal stále hlouběji do ekosystému ANSYSu a Maxwellu pod Linuxem, jsem stále častěji narážel na to, že v něm jsou použity i open source komponenty. Když si přečtete EULU k ANSYSu, pak jediným jmenovaným open source produktem je Graphwiz. To ovšem neodpovídá faktu, že ANSYS zjevně obsahuje knihovny projektů Mesa a Qt, pravděpodobně i části WINE, možná Cygwin. Jejich licence samozřejmě neznám a netuším jaká je možnost jejich použití v komerčních produktech, považoval bych ale za slušnost je zmínit a poděkovat jejich tvůrcům...


Update pro ANSYS 17.0 - 17.2

Na konci ledna se objevila nová verze ANSYSu - 17.0. Postup jejího zprovoznění je navlas stejný jako v případě ANSYSu 16.2, pouze v případě 17.0 se u Maxwellu objevuje požadavek na podporu _XGetRequest v knihovně libXrender.so, což se projevuje pádem Maxwellu po jeho spuštění s hláškou:

/usr/local/share/ansys170/v170/AnsysEM/AnsysEM17.0/Linux64/ansysedt.exe: symbol lookup error: /usr/lib/x86_64-linux-gnu/libXrender.so.1: undefined symbol: _XGetRequest
Řešení je dodání vhodné knihovny z podporované distribuce - postačuje sáhnout balík xorg-x11-libXrender-7.6_0.9.6-9.1.2.x86_64.rpm, rozbalit jej a obsah nakopírovat do složky /usr/local/share/ansys170/v170/AnsysEM/AnsysEM17.0/Linux64/mainwin540/Linux64/mw/lib-amd64_linux_optimized. Další novinkou je, že v adresáři Maxwellu již schází binárka maxwell.exe - ta byla přejmenována na ansysedt.exe a Maxwell je tedy nutné spouštět pomocí ./ansysedt.

       

Hodnocení: 100 %

        špatnédobré        

Obrázky

ANSYS 16.2 a 17.0 na nepodporované distribuci, obrázek 1 ANSYS 16.2 a 17.0 na nepodporované distribuci, obrázek 2 ANSYS 16.2 a 17.0 na nepodporované distribuci, obrázek 3 ANSYS 16.2 a 17.0 na nepodporované distribuci, obrázek 4

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

13.11.2015 19:09 Pavel Kozisek
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
Odpovědět | Sbalit | Link | Blokovat | Admin
v názvu jakékoliv cesty nesmí být diakritika v názvu jakékoliv cesty nesmí být mezera
to podle mne neni chyba ale zdravy rozum. Ja vim, ze to, co ve Windows zaclo je dnes vseobecne rozsireny nesmysl a rada lidi si mysli , ze je to i prirozene. Ale bohuzel nas to vsechny stoji furu penez.

Jinak to co popisujete bych obecne zaradil pod pojem:

normalizace, typizace, unifikace.

a to, ze se dnes na tyto veci neklade duraz nas opet stoji furu casu a penez. Je to klasicka ukazka toho, jak

trh nereguluje smysluplne

Zda by stat mohl diky nejake normalizacni instituci stanovit pravidla, aby se mohl nejaky pitomy program bez Vami popisovanych problemu instalovat. Ale bohuze stali na zacatku te cesty 20-25 leti spoluobcane, kteri jeste nemeli tenkrat dostatekh zkusenosti a vysledek dnes sklizime.

13.11.2015 20:06 R
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
Nezmysel.

V Unixe aj v Linuxe platilo a plati, ze cesta k suboru moze obsahovat lubovolne znaky. Ak s tym ma nejaky program problem, tak je to chyba. Vo Windows to je viac obmedzene, ale ked ma program problemy s medzerami a diakritikou, tak je to tiez chyba.
xkucf03 avatar 13.11.2015 22:32 xkucf03 | skóre: 49 | blog: xkucf03
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
cesta k suboru moze obsahovat lubovolne znaky. Ak s tym ma nejaky program problem, tak je to chyba
+1
Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
14.11.2015 14:01 hlasovani | skóre: 1 | blog: zapamatovat
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
Každou chvíli se potýkám se soubory sdílené přes Sambu(linux mašina), které mají v názvu * a jediný způsob, jak je přejmenovat přes Sambu, je použít widle (alespoň o žádném jiném způsobu nevím). V linuxu mi to prostě nejde.
14.11.2015 14:25 R
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
To vazne vo Windows funguje? Ocakaval by som, ze tam taky subor nevytvoris.
14.11.2015 15:09 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
user@stroj:~$ touch 'ano****?'
user@stroj:~$ ls -al ano\*\*\*\*\? 
-rw-r--r-- 1 user user 0 lis 14 15:11 ano****?
user@stroj:~$ mv ano\*\*\*\*\? ne
user@stroj:~$ ls -al ne
-rw-r--r-- 1 user user 0 lis 14 15:11 ne
Jendа avatar 14.11.2015 15:56 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
Ty máš ~ na Sambě? Jak se to používá?

Teď jsem zkusil takový soubor vytvořit a to fakt nejde. Jestli by šel přejmenovat nevím, když ho nemůžu vytvořit a wokna tam fakt nikde nejsou.
/mnt/samba# touch "aa*ble*uuu"
touch: cannot touch ‘aa*ble*uuu’: No such file or directory
/mnt/samba# touch /tmp/"aa*ble*uuu"
/mnt/samba# 
14.11.2015 17:12 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
Hele. Vysvětlil ti někdy někdo jaký je rozdíl v uvozovkách?
14.11.2015 17:26 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
Možná ale že jsem se trochu unáhlil, protože to nemám možnost teď odzkoušet.
Jendа avatar 14.11.2015 17:50 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
Vysvětlil, a
~> echo "aa*ble*uuu"
aa*ble*uuu
~> echo 'aa*ble*uuu'
aa*ble*uuu
řekl bych, že v tomto případě žádný. A proto jsem tam taky dával ukázku, že vytvoření toho souboru v /tmp (ext4) projde.
xkucf03 avatar 14.11.2015 18:05 xkucf03 | skóre: 49 | blog: xkucf03
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci

Tak je potřeba opravit Sambu. Je to jako kdybys měl v programu SQL injection a vymlouval se na to, jak jsou ti uživatelé nemožní, když někam zadávají apostrofy a středníky (třeba do jména).

Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
pushkin avatar 15.11.2015 11:02 pushkin | skóre: 43 | blog: FluxBlog
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
cesta k suboru moze obsahovat lubovolne znaky. Ak s tym ma nejaky program problem, tak je to chyba
+1
+1
18.11.2015 16:00 trekker.dk | skóre: 72
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
Je to klasicka ukazka toho, jak trh nereguluje smysluplne
To je zase blábol. Je to ukázka akorát toho, že zákazníkovi současný stav nevadí, protože produkt, který si koupil, mu funguje (zejména vzhledem k tomu, že když už někdo má na tuhle srandu, tak pravděpodobně bude mít na to koupit si k tomu desktop od Red Hatu.)
Quando omni flunkus moritati
Jendа avatar 18.11.2015 20:23 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
Jak by se projevovalo, kdyby to zákazníkovi vadilo? Vzhledem k tomu, že alternativa k podobným hustosoftwarům často není, může tak maximálně zavřít krám.
19.11.2015 11:37 trekker.dk | skóre: 72
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
Jo, projevilo by se to přesně tak. Ale neděje se to, takže se zdá, že pro zákazníky to není tak kritické.

Buďme upřímní, co se počítačů týče, lidi jsou zvyklí na bordel, protože často ani netuší, jak velký je to bordel. Těch pár lidí, kteří tuší, výrobce software zase tolik nevytrhne. A jak známo, až na výjiky se bordel řeší až ve chvíli, kdy přejde do neudržitelného stádia a počítač nedělá to, co se od něj očekává (protože tohle už zákazník pozná.)
Quando omni flunkus moritati
Jendа avatar 19.11.2015 12:42 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
Jo, projevilo by se to přesně tak.
Nevěřím. Lidi dokážou nějaké vadění přetrpět, než aby šli místo toho plnit housky do McDolan's.
pushkin avatar 19.11.2015 12:24 pushkin | skóre: 43 | blog: FluxBlog
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
To je přesně ono. Jenom nechápu, proč výrobci těchto programů nejsou při řádově miliardových ziscích schopní vyčlenit jednoho člověka, který by jim implementoval podporu UTF-8 do cesty k názvům souborů.
pavlix avatar 19.11.2015 12:29 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
Třeba čekají, až přijde nějaký velký partner a zaplatí za to nějakou hezkou sumu.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
19.11.2015 12:54 trekker.dk | skóre: 72
Rozbalit Rozbalit vše Re: ANSYS 16.2 na nepodporované distribuci
a) není dostatečná poptávka (klient řekne chci podporu UTF-8, firma řekne za peníze, klient nařídí zaměstancům nepoužívat diakritiku a mezery)
b) nikomu se nechce do kódu, který za ta léta asi bude v ne moc pěkném stavu, dělat změny, které nepřinesou peníze a naopak přinesou potenciální problémy (když se něco rozbije)
Quando omni flunkus moritati

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.