Skip to main content

I've been having trouble getting SPSS23 to install silently through Casper. I've customized the installer.properties file and created a package that will place the SPSS23 dmg, the installer.properties file, and the SPSS_Statistics_Installer.bin file into /Library/Application Support/SPSS23-Temp. I've also tweaked the silent install script I had for SPSS22 to look like this:



#! /bin/sh
#Silent Install using information in the installer.properties file
sudo /Library/Application Support/SPSS23-Temp/SPSS_Statistics_Installer.bin -f /Library/Application Support/SPSS23-Temp/installer.properties

#Firewall exceptions
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --unblockapp /Applications/IBM/SPSS/Statistics/23/SPSSStatistics.app
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --add /Applications/IBM/SPSS/Statistics/23/SPSSStatistics.app

#Cleanup
sudo rm -r /Library/Application Support/SPSS23-Temp


While SPSS23 no longer needs Java 6, the silent installer for it does. I've made sure to include the legacy java as part of the policy that installs SPSS23. When all of this is run together, I get the "Error trying to load library no IAMac in java.library.path" error in the title. The program does finish installing, but it pops an error on every open that says "SPSS Statistics Client Scripting failed to start. The network host cannot be found, inet:Local Computer:0."



I've double checked the installer.properties and can't find any stupid errors on my side that would cause issues. I've also confirmed that the SPSS GUI installer works just fine. It seems to be something with the silent installs only. I can't find anyone other than this recent JAMFNation user who has reported having this issue. Admittedly that could just be my Google-Fu being weak.



Does anyone have any ideas on how to fix this error?

Have you tried taking Casper out of the equation? What happens if you run the script with the installers where they need to be?


@bpavlov I've tested it without Casper being involved. I've run those commands manually while those files are in the appropriate places. The result was the same.


IBM support gave this info:



IBM SPSS Technical Support has received your request for assistance.

Based upon the information provided, it appears you have encountered a known issue with unattended installation of Statistics 23 on Mac OS hosts.

The behavior indicated in the Service Request record ('unable to load IAMac in java.library.path') appears to be addressed by the following technical material: https://www.ibm.com/support/docview.wss?uid=swg1PI41915

An IBM Web ID is required to access these materials. If you do not have an IBM Web ID, you can acquire one here: https://www.ibm.com/account/myibm/profile.do?cc=us&lc=en&page=reg

Please review the technical material and apply the indicated resolution steps.

Please let me know if you require further assistance or if the information provided resolves this matter.


Unfortunately, the link they give is bad even if you're signed in. I've replied to see if they have the correct link, but they have not replied yet.


Running the bin as a standalone I am also having the issue. As a workaround a composer capture of the install worked, but I would prefer to do it the IBM prescribed route. Also, as another side-note I get the error on 10.9.5 and 10.10.3.


@bryce.carlson Just got a reply back from them. Apparently the error isn't affecting things directly, so their advice is to ignore it. That's fine by me, though Casper doesn't quite understand how to ignore an error code like that. I'll have to figure out how to catch the error and let Casper know it's cool.



The Client Scripting issue is one they just got alerted on from a few people. They're aware, but no fix just yet. They're keeping me in the loop. I'll update here as I hear back.



(Edit)



There appears to be some problem with the web publication of that technical document.

Here is the 'solution' portion of the document: This error message on console can be ignored. It does not affect the installation. After you see this error on Terminal, if you wait a bit you will see that silent installations for either single user or network license will proceed successfully on 10.10.3 Yosemite and the program SPSS 23 will run fine after installation.

@McAwesome thanks for relaying that info! Knowing that they say the install is still good to spite the error is good to know.



As for the dilemma of making Casper ignore it my first thought would be to run it with errors suppressed with "> /dev/null 2>&1" or something like that.



I will try that today and report back.


@bryce.carlson Sounds good. Let me know what the results are.



If you're also seeing that "Scripting failed to start" error, they're looking into that. They were asking for more info and then suddenly closed the ticket on me. I have no idea if what their status on that one is.


@McAwesome No luck so far with suppressing the errors. I have a few more things to try. Any good news from IBM?


@bryce.carlson I was able to suppress the "Casper has encountered an error" type pop up through Self Service with this script:



#! /bin/sh
#Silent Install using information in the installer.properties file
sudo /Library/Application Support/SPSS23-Temp/SPSS_Statistics_Installer.bin -f /Library/Application Support/SPSS23-Temp/installer.properties > /dev/null 2>&1

#Firewall exceptions
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --unblockapp /Applications/IBM/SPSS/Statistics/23/SPSSStatistics.app
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --add /Applications/IBM/SPSS/Statistics/23/SPSSStatistics.app

#Cleanup
sudo rm -r /Library/Application Support/SPSS23-Temp


It still has an error, but Self Service doesn't freak out over it. Not the best solution, but it works for our purposes.



As for the Scripting Error, IBM provided an interim fix for it. Unfortunately they have this fix under lock and key. I had to be manually added to access it. If you contact them, they may be willing to give you access. I haven't been able to get the fix to work silently yet, though I haven't had much time to work on it.


@McAwesome You are awesome. Thanks for sharing that. I got Casper to ignore the error as well (only difference in my .sh file is that I pull the install from the /Library/Application Support/JAMF/ cache location. Granted my ocd still is not happy that the installer errors. However, I had one of the analytics staff here test the install and they said it worked fine so that is good enough for me.



Intersting. Keep us posted. I will try and reach out to our support contact to try it as well.
Thanks for the all the info!


For those wondering about another way to deploy using the cache via JSS method here is my .sh file. I borrowed some chunks from the JAMF Nation installPKGfromDMG.sh. For my source I made a clean read only DMG of continuing SPSS's .bin install and my .properties file.



#! /bin/sh
#
####################################################################################################
#
# DEFINE VARIABLES & READ IN PARAMETERS
#
#####################################################################################################
#
# HARDCODED VALUES SET HERE
#
# Variables set by Casper - To manually override, remove the comment for the given variable
# targetDrive="" # Casper will pass this parameter as "Target Drive" if left commented out
# computerName="" # Casper will pass this parameter as "Computer Name" if left commented out
# userName="" # Casper will pass this parameter as "User Name" if left commented out. Usernames
# can only be passed if the script is triggered at login, logout, or by Self Service

# Variables used for logging
logFile="/private/var/log/installBINfromDMG.log"

# Variables used by this script.
dmgName=""

# CHECK TO SEE IF A VALUE WERE PASSED IN FOR PARAMETERS AND ASSIGN THEM
if [ "$1" != "" ] && [ "$targetDrive" == "" ]; then
targetDrive="$1"
fi

if [ "$2" != "" ] && [ "$computerName" == "" ]; then
computerName="$2"
fi

if [ "$3" != "" ] && [ "$userName" == "" ]; then
userName="$3"
fi

if [ "$4" != "" ] && [ "$dmgName" == "" ]; then
dmgName="$4"
fi

####################################################################################################
#
# LOGGING FUNCTION
#
####################################################################################################

log () {
echo $1
echo $(date "+%Y-%m-%d %H:%M:%S: ") $1 >> $logFile
}

####################################################################################################
#
# VARIABLE VERIFICATION FUNCTION
#
####################################################################################################

verifyVariable () {
eval variableValue=$$1
if [ "$variableValue" != "" ]; then
echo "Variable "$1" value is set to: $variableValue"
else
echo "Variable "$1" is blank. Please assign a value to the variable."
exit 1
fi
}

# Verify Variables
verifyVariable dmgName

# Mount the DMG
log "Mounting the DMG $dmgName..."
mountResult=`/usr/bin/hdiutil mount -private -noautoopen -noverify /Library/Application Support/JAMF/Waiting Room/$dmgName -shadow`
mountVolume=`echo "$mountResult" | grep Volumes | awk '{print $3}'`
mountDevice=`echo "$mountResult" | grep disk | head -1 | awk '{print $1}'`

if [ $? == 0 ]; then
log " DMG mounted successfully as volume $mountVolume on device $mountDevice."
else
log "There was an error mounting the DMG. Exit Code: $?"
fi

# Silent Install using information in the installer.properties file
sudo /Volumes/spss-23-standalone/SPSS_Statistics_Installer.bin -f "/Volumes/spss-23-standalone/installer.properties" > /dev/null 2>&1

# Unmount the DMG
echo "Unmounting disk $mountDevice..."
hdiutil detach "$mountDevice" -force

# Delete the DMG
/bin/rm /Library/Application Support/JAMF/Waiting Room/$dmgName

Any updates to this? I am trying to install SPSS 23 and I am still getting an error message in Self Service when running the script.



#!/bin/sh
#Silent Install using information in the installer.properties file
sudo /Library/Application Support/SPSS/SPSS_Statistics_Installer.bin -f /Library/Application Support/SPSS/installer.properties > /dev/null 2>&1

#Firewall exceptions
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --unblockapp /Applications/IBM/SPSS/Statistics/23/SPSSStatistics.app
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --add /Applications/IBM/SPSS/Statistics/23/SPSSStatistics.app

#Cleanup
sudo rm -r /Library/Application Support/SPSS23-Temp

#Add dock icon for SPSS
sudo dockutil --add /Applications/IBM/SPSS/Statistics/23/SPSSStatistics.app

I'm not sure if anyone was looking for an update on this but they released a fix pack to customers only. They told me it cannot be pushed but i'm going to see if it's possible. It's a DMG with a pkg file inside that requires elevation to install. They said it would be fixed in a release patch but did not have a date for that yet. So if i'm understanding this correctly, after an SPSS install, any user would need to have this pkg file sent to them and they would to run it. Sounds pretty abysmal but perhaps there's a way to package it separately or wrap the entire install in composer with the fix pack. If anyone needs this I might be able to help.


break open the pkg they sent you and see what the pkg is actually doing. could be a standard pkg following apple standards. or not.



pkgutil --expand /path/to/pkg /path/to/folder/that/does/not/exist



man pkgutil for more interesting things you can do.



There's also an article on derflounder.wordpress.com that describes how to bake Office updates into an Office installer. You can probably use a similar process depending on how the regular SPSS installer behaves. I fortunately do not have to deal with SPSS at my current job, but that's how I would approach it. Alternatively you can just add the SPSS hot fix to these same policy deploying SPSS (just be aware the installers will run in alphabetical order so make sure the package names are set accordingly).


@bpavlov Yes it seems to just replace the SPSSClientCore.jar within the SPSSStatistics.app under Contents/Resources/bin folder.



I just moved the new jar file into composer and made a pkg out of it to add to my policy for the installer and it works for me now without the "SPSS Statistics Client Scripting failed to start. The network host cannot be found, inet:Local Computer:0." issue.


Does anyone have the correct link to download the patch?



Thanks


@hansen_m It's something IBM has to approve you to have access to. It will be included in the next fix pack whenever they end up releasing that.


Please let us know the IBM's Interim Fix number for this patch?
Edit: Just found out. It is IF10 for SPSS23 for Mac.


What is the exit code everyone is seeing with this error?


Not sure if this one has been answered yet or not, but I was having this issue installing SPSS 23 from Self Service. I found that IBM finally posted a fix pack for the issue:



http://www-01.ibm.com/support/docview.wss?uid=swg24039501



Download links are at the bottom of the page. I was able to wrap both installer.bin files and the installer.properties file up in Packages and install both SPSS and Fix Pack 2 using the following script:



Determine working directory



install_dir=dirname $0



Install SPSS



$install_dir/SPSS_Statistics_Installer.bin -f $install_dir/installer.properties > /dev/null 2>&1



Install SPSS Fix Pack 2



$install_dir/SPSS_Statistics_Installer_Mac_Patch.bin -f $install_dir/installer.properties > /dev/null 2>&1



add firewall exceptions



/usr/libexec/ApplicationFirewall/socketfilterfw --unblockapp /Applications/IBM/SPSS/Statistics/23/SPSSStatistics.app/Contents/MacOS/spssLauncher
/usr/libexec/ApplicationFirewall/socketfilterfw --add /Applications/IBM/SPSS/Statistics/23/SPSSStatistics.app/Contents/MacOS/spssLauncher



Hope this helps anyone running into trouble.



Andy


@adhuston I think the link you meant is this one. I don't have access to the IBM files, so I'll have to check with that person to see if I can get it and test it out. I'll let you know.


@adhuston Also, were you able to use the same installer.properties for both the program and the fix pack?