Несколько дней назад я пытался установить OpendTect в Ubuntu, у меня есть установщик .sh OpendTect для Linux.
Я действительно работал:
chmod a+x OpendTect_Installer_lux32.sh
./OpendTect_Installer_lux64.sh
И установщик подобен окнам, когда "окна похожи на конец установки", и он говорит, что все прекрасно в терминале, говорит core dumped
и я не могу работать start_dtect
потому что это говорит ту же ошибку core dumped
.
Я установил его с действиями ниже:
sudo apt-get install csh
cd ~/Downloads
wget http://download.opendtect.org/relman/OpendTect_Installer_lux64.sh
sh OpendTect_Installer_lux64.sh
Это было установлено на ~/OpendTect.
Если я запускаю его с ~/OpendTect/6.2.0/start_dtect, я получаю то же
Segmentation fault (core dumped)
.
Но я могу запустить его командой (указывающий каталог библиотеки вручную)
LD_LIBRARY_PATH=/home/$USER/OpendTect/6.2.0/bin/lux64/Release \
/home/$USER/OpendTect/6.2.0/bin/lux64/Release/od_main
Примечание: Я никогда не использовал это программное обеспечение, просто установленное для помощи Вам.
@N0rbert дал полезную информацию здесь.
OpendTect использует csh сценарии для установки необходимой среды, и они перестали работать с segfault. После рытья немного, я нашел, что segfault вызывается
eval `"${DTECT_APPL}/bin/mksethdir"`
Замена этой строки в двух сценариях с setenv HDIR lux64; setenv binsubdir lux64
устраните проблему.
В моем случае у меня есть a lux64
папка в OpendTect/6.4.0/bin/
. Если это не имеет место для Вас, изменения lux64
чем Вы имеете.
Вот быстрое исправление с sed:
cd ~/OpendTect/6.4.0/bin # or wherever your opendtect folder is
sed -i 's/eval `"\$DTECT_APPL\/bin\/mksethdir"`/setenv HDIR lux64; setenv binsubdir lux64/g' init_dtect
sed -i 's/eval `"\$DTECT_APPL\/bin\/mksethdir"`/setenv HDIR lux64; setenv binsubdir lux64/g' od_exec
Если кто-либо знает почему eval
перестал работать здесь, сообщить нам.