Tag Archives: linux

И снова о сборке в 32 разрядном Линуксе

ну чо, собрал я ccx с арпаком на 32 битном линуксе. оказалось, мешала оптимизация компилятора (в исходном файле на фортране так и было написано, что опмтимизация в данном алгоритме противопоказана)

в файле ARPACK/ARmake.inc надо поменять строку

FFLAGS = -O

на

FFLAGS =

то есть мы убираем флаг -O включащий оптимизацию

Я проверил, полученный файл нормально решает задачу из файла beam-bukl.inp

Еще бинарная сборка!

На 32 разрядной Linux архитектуре мои сборки не работают с собственными значениями. Пришлось использовать не собранную мной библиотеку ARPACK/LAPACK, а готовуя из дистрибутива Centos 6/32). Полученный ccx работает корректно:

http://mud.kharkov.org/files/1/ccx_2.8p2

На 64-bit линуксах и на 32/64 Винде (cygwin) такие глюки не наблюдаются

Вот .inp файлы, для просчета которых нужно вычисление собственных чисел и на которых могут проявляться эти глюки

http://mud.kharkov.org/files/1/buckling_modal.zip

ccx in github

Я взял свежий ccx 2.8p2, добавил туда библиотеки ARPACK и SPOOLES, немного причесал и получившийся пакет исходников выложил на github:

https://github.com/prool/ccx_prool

Как собирать под Linux

1. В ARPACK/ARmake.inc скорректировать путь в параметре home
2. В корневом каталоге пакета набрать make

Минут пять будет собираться, и вот, вуаля

Сборка cgx под Linux

UBUNTU

sudo apt-get install libglu1-mesa-dev freeglut3-dev

sudo apt-get install mesa-common-dev

sudo apt-get install libxmu-dev

sudo apt-get install libxtst-dev

http://www.dhondt.de/cgx_2.8.all.tar.bz2 -> download

make

И получился бинарник

А вот архив с бинарником и набором динамических библиотек. ЭТО должно работать на всех Линуксах


CENTOS

Начал делать, стали непонятные ошибки выскакивать, пока бросил. (См. страницу “TODO“).

Сборка ccx под Linux

Я зашел на сайт Гвидо, скачал оттуда ccx 2.8, а также рекомендуемые им (старые) библиотеки ARPACK и SPOOLES, собрал всё в один архив, поправил мелкие баги в make файлах и не только. Полученное чудо должно собираться командой make в любом Линуксе:

DOWNLOAD

Вот 32 bit static lib бинарник, может кому нужен, он должен запускаться и на 32 и на 64 разрядных Линуксах

А вот 64 bit static lib бинарник