Intel C++/Fortran Compiler for Linux 的發行版只包含了給 RedHat 用的 .rpm 包裝,所以要把它裝到 Debian 上的話,不能用 Intel 給的安裝 script,得花點小工夫。

  1. 取得 Intel C++ Compiler 的 tarball。用 tar xvfz l_cc_pc_8[1].1.022.tar.gz 解開。

  2. 因為 Debian 的政策不希望使用者直接以 rpm 安裝軟體,而且用 rpm 似乎不太容易把包裝檔拆開來,所以我們要用 alien 先把 ICC (Intel C++ Compiler) 裡的 rpm 包裝轉成 deb:

    sudo alien -d intel-icc8-8.1-022.i386.rpm
    

    如果是用標準的 ia32 是這個檔;如果是在 ia64 下就改用 .ia64.rpm。

  3. 然後會生成一個 intel-icc8_8.1-23_i386.deb 檔案,我們用:

    dpkg -x intel-icc8_8.1-23_i386.deb test
    

    把它解到暫存目錄裡面。

  4. 我喜歡把這些外加的套件裝到 /usr/local ,所以請:

    sudo mv test/opt/intel_cc_80 /usr/local
    

    把整個目錄搬過去。

  5. 因為我們完全用手動的方式安裝,所以 $ICCROOT/bin 下所有 script 的路徑都沒有設定,得要自已改成正確的; <INSTALLDIR> 這個字串要取代成 /usr/local/intel_cc_80

    可以把以下的 python script 存到 $ICCROOT/bin 裡面 (我取名為 cinst.py ,記得要 chmod a+x cinst.py):

    #!/usr/bin/env python
    # -*- coding: UTF-8 -*-
    
    from re import sub
    from glob import glob
    
    fns = glob("*[!.py]")
    
    for fn in fns:
      f = open( fn )
      lines = f.readlines()
      f.close()
    
      f = open( fn, 'w' )
      for l in lines:
        f.write( sub("<INSTALLDIR>", "/usr/local/intel_cc_80", l) )
      f.close()
    
      print "%s processed." % fn
    

    執行它,就會自動把該目錄所有 script 內的 <INSTALLDIR> 取代成 /usr/local/intel_cc_80 。如果你安裝的位置不同於我,請修改這個檔案。在執行這個 script 之前,最好也先把 $ICCROOT/bin 備份起來。

  6. 修改 $ICCROOT/bin/iccvars.sh (或 iccvars.csh),把從 if [ -z "${MANPATH}" ] 開始的那一段設定 (共 6 行) comment out 掉 (即在行首加上 # 字元)。這段對 $MANPATH 的設定在 Debian 上沒什麼用。

    想要把 ICC 的 manpage 加到系統裡,在 /etc/manpath.config 裡加上下面這一行:

    MANPATH_MAP     /usr/local/intel_cc_80/bin              /usr/local/intel_cc_80/man
    

    就可以了。

  7. 把你的 license file 複製到 $ICCROOT/licenses

    . $ICCROOT/bin/iccvars.sh 後,即可開始使用 Intel C++ Compiler。

P.S. 以上的指令有用到 sudo 的,表示要用 root 的權限執行,你當然也可以直接 su 成 root。

P.P.S. 我用 $ICCROOT 來表示 ICC 安裝的目錄,你不必真的建立這個環境變數。

Posted by yungyuc at 17:08, 0 comment, 0 trackback.
Navigate
Add a trackback
Add a comment

Your name. (required)

Your personal website. (optional)

Your email address. Will not show in page. (suggested, but optional)

Text format is "Plain Text".

Enter "ORlWv"
© hover year to navigate month: powered by django