Skip to content

Month: September 2009

idl71 install notes

==========================================================
IDL71 Install instructions
==========================================================

NOTE: These files are stashed in /etc/secret/idl71:

idl71-install-notes.txt
idl71-license.dat
astron.tar.gz


# cd /usr/local
# mv itt itt70
# mkdir itt
# cd itt

As the installation booklet suggested might happen, my attempt to run the install script failed with:


[root@algol itt]# /media/IDL71/install_unix.sh
bash: /media/IDL71/install_unix.sh: /bin/sh: bad interpreter: Permission denied

I applied the remedy they suggested:

[root@algol itt]# umount /dev/hdb
[root@algol itt]# mount -o ro -t udf /dev/hdb /media

NOTE: For algol, the device was ‘/dev/hdb’, but for sirius the device was ‘/dev/scd0’:

[root@Sirius itt]# umount /dev/scd0
[root@Sirius itt]# mount -o ro -t udf /dev/scd0 /media

… and then ran the installer again:

[root@algol itt]# /media/install_unix.sh

The installer launched and asked me what I wanted to install. I chose only IDL program files and skipped the “CIA High Res Maps” and “Dicom Network Services” options.

After install, a ‘Product Environment’ window pops up. I chose the ‘Create Links’ option.

The “Licensing/Registration Program” window pops up. I chose to run the license wizard, but it seems as if SELinux kept it from popping up. Instead, the installer finished by giving me the full path the the license wizard so that I could run it later:

/usr/local/itt/idl71/bin/ittlicense

When I launched the license wizard by hand I got SELinux warnings:

[root@algol itt]# /usr/local/itt/idl71/bin/ittlicense
/usr/local/itt/idl71/bin/bin.linux.x86/idl: error while loading shared libraries: /usr/local/itt/idl71/bin/bin.linux.x86/libidl.so.7.1: cannot restore segment prot after reloc: Permission denied
rm: cannot remove `/root/.ittlicense_tmp': No such file or directory
[root@algol itt]#

The SELinux troubleshoot browser posted an alert, and specified the commnands necessary to make SELinux shut up. I issued those commands, but the wizard posted a window complaining about another SElinux denial… At this point I changed the systems SELinux state from ‘Enforcing” to “Permissive”…

I pasted the license.dat info into the text typin and clicked through all the options (install license mgr, launch license mgr) and then select Exit.

NOTE: the idl71 license wizard makes it’s own provisions for starting the license manager at boot time. So I removed the old idl70 specific license manager launching command from /etc/rc.d/rc.local:

/usr/local/itt/idl70/bin/lmgrd -c /usr/local/itt/license/license.dat

NOTE: Must also kill the running lmgrd process for the previous version.

Made sure all current users ~/.cshrc file contained the correct idl_setup call. They did. Here’s the proper command:

source /usr/local/itt/idl/bin/idl_setup

Installed the goddard lib:


mkdir /usr/local/itt/idl70/lib/goddard
cd /usr/local/itt/idl70/lib/goddard
wget http://idlastro.gsfc.nasa.gov/ftp/astron.tar.gz
tar -xvzf ./astron.tar.gz
chown root:users -R .

I then rebooted, logged in as bduffy, ran a csh shell and issued the idlde command. Seemed to work….

============================================================
Install issues on Sirius and Mirzam
============================================================

On Sirius (and Mirzam) the installation experience was different. After setting SELinux to Permissive mode, I launched the license wizard and it it segfaulted.


[root@Sirius itt]# /usr/local/itt/idl71/bin/ittlicense
IDL Version 7.1 (linux x86 m32). (c) 2009, ITT Visual Information Solutions

% Embedded IDL: ITT Visual Information Solutions, License Wizard.
% Embedded IDL: ITT Visual Information Solutions, License Wizard.
% Loaded DLM: XML.
/usr/local/itt/idl71/bin/ittlicense: line 36: 27919 Segmentation fault $IDL_DIR/bin/idl $* -em=$IDL_DIR/lib/hook/ittlicense.sav
[root@Sirius itt]#

NOTE: I could launch idlde, but it complained about the missing license manager…

SOLUTION:

I could see on algol how the license manager was launched. There’s a file in /etc/init.d/sys5_idl_lmgrd and symlinks to it in /etc/rc.d/rc*.d. So:

From algol:

rsync -av /etc/init.d/sys5_idl_lmgrd root@sirius:/etc/init.d/

From Sirius:


ln -s /etc/init.d/sys5_idl_lmgrd /etc/rc.d/rc0.d/K01sys5_idl_lmgrd
ln -s /etc/init.d/sys5_idl_lmgrd /etc/rc.d/rc2.d/S99sys5_idl_lmgrd
ln -s /etc/init.d/sys5_idl_lmgrd /etc/rc.d/rc3.d/S99sys5_idl_lmgrd
ln -s /etc/init.d/sys5_idl_lmgrd /etc/rc.d/rc4.d/S99sys5_idl_lmgrd
ln -s /etc/init.d/sys5_idl_lmgrd /etc/rc.d/rc5.d/S99sys5_idl_lmgrd

I then rebooted, saw lmgrd start properly at boot, and after logging in as bduffy was able to launch idlde w/o any license warnings.

============================================================
idlde libGL error on Sirius and Mirzam
============================================================

When I tested idlde by logging in as bduffy and launching idlde from Mirzam, idlde posted this warning message to it’s text window:


IDL Version 7.1 (linux x86 m32). (c) 2009, ITT Visual Information Solutions
Installation number: 217420.
Licensed for use by: Carleton College

G’day!
% Compiled module: ADDPATH.
% Compiled module: AODEFDIR.
% Compiled module: P8.
% Compiled module: LDCOLPH.
libGL error: open DRM failed (Operation not permitted)
libGL error: reverting to (slow) indirect rendering
% Unsupported X Windows visual (class: PseudoColor, depth: 8).
Substituting default (class: TrueColor, Depth: 24).

NOTE: On algol, I get this message instead. It’s notable that the license wizard didn’t fail on algol…


IDL Version 7.1 (linux x86 m32). (c) 2009, ITT Visual Information Solutions
Installation number: 210557.
Licensed for use by: Carleton College

G’day!
% Compiled module: ADDPATH.
% Compiled module: AODEFDIR.
% Compiled module: P8.
% Compiled module: LDCOLPH.
libGL warning: 3D driver claims to not support visual 0x4b
% Unsupported X Windows visual (class: PseudoColor, depth: 8).
Substituting default (class: TrueColor, Depth: 24).
% Compiled module: DOPHSBALL.

SOLUTION:

On mirzam I noticed that we didn’t see these errors running as root, and so Matt and I looked at /dev/dri/* and /dev/dri/card0 had perms of 600. When we chmod’d them to 666, idlde didn’t post the errors. So then the challenge was to find the right file that would change these perms at the right time. At first I thought that modding the line at the bottom of /etc/security/console.perms.d/50-default.perms would do it, but it didn’t work. We think it’s because the dri devices don’t exist at the time this file is applied at boot, but only after X is launched. The proper place/way to set the perms it to append these lines to /etc/X11/xorg.conf:


Section "DRI"
Mode 0666
EndSection

Oddly, although applying this fix to Sirius seemed to work, there is no /dev/dri on Sirius, and running fglrxinfo segv’s, so something isn’t quite right…