在CentOS6上安裝InstallAnywhere2015所遇到的問題

從IA2011開始,IA開始透過FlexNet Node-Locked Licencing的方式。你必須到它的Product And License Center註冊機器的Host ID(MAC),並下載license檔案給IA程式啟用。這意思就是要綁定你使用的機器,不讓你用一組序號輸入就爽爽用。

而我在CentOS6上發生了啟動失敗的問題。

後來直接寫信給它們的Technical Support(support_flexerasoftware.com),他們要求我提供一些debug訊息。而我在FAQ看到一些線索,例如在安裝目錄下的console.txt內出現:

Trying to checkout IACE version=17.0
Library for Native Hostid Couldn't Be Loaded (-521,7024) 
另外在信件來回過程中,我也發現這是由於GLIBC版本所造成的問題:
> ldd ./InstallAnywhere 2015/resource/fnp/libraries/liblmgr11.so
./liblmgr11.so: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./liblmgr11.so)
        linux-vdso.so.1 =>  (0x00007ffff20c5000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f560e634000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f560e417000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f560e082000)
        /lib64/ld-linux-x86-64.so.2 (0x0000003759000000)
CentOS6上的GLIBC版本為2.12,除非更新到CentOS7才能使用2.17版本。只是這是我們的build system,也不是說要升級就可以很快升級的。根據以上線索與經過study後,發現與嘗試了以下三個可能的方法:

  1. 抓IA2014版本的fnp資料夾,去覆蓋2015版本的: 但我找不到2014版本載點。
  2. 將Runtime修改為GLIBC2.14: InstallAnywhere會hang住無法啟動。
  3. 厚臉皮請Flexerasoftware提供舊版本的fnp: 這是最終解,可參考link