This add-on package provides tools for Linux* software developers to create applications that run at top speeds on Intel® processors with Intel® Extended Memory 64 Technology (Intel® EM64T). Optimizations including inter-procedural optimization (IPO) and profile-guided optimization (PGO) can provide greater application performance. Intel Compilers support multi-threaded code development through autoparallelism and OpenMP* support.
This add-on package consists of the Intel® C++ Compiler Version 8.1 for Intel EM64T for Linux. Installation of this package requires that you have a current valid license for the Intel C++ Compiler for Linux Systems.
The compiler in this package runs on the Linux operating system and generates executables for Intel EM64T.
The Intel® Debugger provides native debugging of applications on Intel EM64T using a command-line or GUI interface.
These release notes supplement those of the IA-32 Linux compiler, and provide only those details that are specific to the Intel EM64T compiler. Please read the IA-32 release notes for additional information.
This product contains the following components:
Other than these release notes, this add-on package does not contain product documentation. The documentation can be accessed by installing the IA-32 Linux compiler or at http://developer.intel.com/software/products/compilers/flin/docs/manuals.htm.
This is the first release of the compiler for Intel EM64T enhancements. This section describes differences from the IA-32 compiler. Please refer to the IA-32 compiler release notes for additional information.
In the Intel EM64T for the Linux environment, the default sizes of the C/C++ long
and
pointer types are both 64-bit. This is the same as Itanium®-based applications
on Linux, but is different from compilers for IA-32 applications and is different
from the Intel EM64T for WIndows* environment, where pointers are still 64-bit
but long
is 32-bit. If you will be developing your application
for multiple platforms, you will need to keep these differences in mind.
Applications built to take advantage of Intel EM64T can be built with one of three memory models:
-mcmodel=medium
)-mcmodel=large
)IP-relative addressing requires only 32 bits, whereas absolute addressing requires 64-bits. This can affect code size and performance (IP-relative addressing is somewhat faster.)
When shared objects (.so) are built, Position-Independent Code (PIC) is specified
(-fpic
is added by the compiler driver) so that a single .so can
support all three memory models. However, code that is to be placed in a static
library, or linked statically, must be built with the proper memory model specified.
Note that there is a performance impact to specifying the Medium or Large memory
models.
-fno-exceptions
is Now SupportedThe –fno-exceptions
option turns
off exception handling table generation, resulting in smaller code. Any
use of exception handling constructs such as try blocks, exception handling
specifications, or throw statements will produce an error.
A preprocessor symbol __EXCEPTIONS
is defined when this option is not used. It is undefined when this option
is present.
-auto_ilp32
SupportedThe -auto_ilp32
switch, which specifies that the application
cannot exceed a 32-bit address space, is supported for Intel EM64T systems
when the
-[a]xP
option is also specified.
-[a]xW
and -[a]xP
For Intel EM64T, the only processor type values
supported by the -ax
and -x
switches are W
and P
. K
, B
and N
are
not supported.
The installation script of the Intel C++ Compiler for Intel EM64T uses the system utility RPM to install files. Note, both RPM 4.0.2 and RPM 4.1 have a limitation, please see Known Limitations below for details.
The Intel C++ Compiler for Intel EM64T uses Macrovision Corporation's FLEXlm* electronic licensing technology. License management is transparent. The installation program of the Intel C++ Compiler 8.1 for Intel EM64T checks for a valid license before installing any component of the product. Also, the license must remain in place on the system in order to use the Intel C++ Compiler 8.1 for Intel EM64T to compile and build programs.
The Intel C++ Compiler for Intel EM64T requires a current, valid license
for the Intel C++ Compiler for Linux Applications. Acceptable Software
Component Names are CComp
and CCompL
.
A license is current if it has not expired (Product Expiration Date is permanent or is in the future) and support services for it have not expired (Intel Support Expiration Date is later than the release date of the compiler.) For more information, including definitions of terminology, please read Using the Intel® Software License Manager for FLEXlm.
The Intel C++ Compiler for Intel EM64T is provided by download only, and a license key is sent to you by e-mail. The license key must be saved as a text file with the .lic extension and placed in a location where the compiler can find it. The compiler (and compiler install) looks for licenses in the following locations:
INTEL_LICENSE_FILE
/opt/intel/licenses/
/opt/intel_cce_80/licenses/
All locations will be searched for valid license files. Intel recommends that you place Intel license files in either the common /opt/intel/licenses/
directory or in another directory pointed to by INTEL_LICENSE_FILE
.
If you have a Counted license, you must install the Intel® Software License Manager for FLEXlm on a supported system that is on your local network and use INTEL_LICENSE_FILE
to point to it. Details for installing and configuring the license manager are provided in Using the Intel® Software License Manager for FLEXlm.
For details about the support service license, please see http://www.intel.com/software/products/compilers/clin/pricelist.htm .
> tar -xvf l_cce_p[c]_8.1.xxx.tar
> tar -zxvf l_cce_p[c]_8.1.xxx.tar.gz
> source ./install.sh
iccvars.sh
(.csh
) files to include the directory
where the compiler is installed. The install script automates this procedure.
/opt/intel_cce_80/licenses
.
Intel C++ Compiler for Intel EM64T applications
Linux Application Debugger for Intel EM64T applications
-U --replacefiles
are
recommended to force the update of existing files. The default installation
directory is /opt/intel_cce_80/
for the Intel C++ Compiler for Intel EM64T,
and /opt/intel_idbe_80/
for
the Intel Debugger for Intel EM64T.
'x'
to exit
the install script. PATH
and LD_LIBRARY_PATH
.
The installation script (install.sh)
creates
compiler environment script files (iccvars.sh/ idbvars.sh)
that
set these variables. It is strongly recommended that you add those script files
into your login script (.login
file). So once the variables are
set in the ".login"
file there is no need to run the script files
for each session.
Source the script to setup the compiler environment:
> source <install-dir>/bin/iccvars.sh(.csh)
The installation program also creates compiler configuration files named <install-dir>/bin/icc.cfg
that contain common settings for
all compilations. You can edit these files to add additional default options. Note,
if you install a compiler update package, you need to save the configuration
file if you have modified it to another filename so that the installation doesn't
overwrite your modified file.
Please register for support after you install this product. See Technical Support for registration instructions.
<compiler-install-dir>/bin/uninstall.sh
/opt/intel_cce_80/bin/uninstall.sh
<debugger-install-dir>/bin/uninstall.sh
/opt/intel_idbe_80/bin/uninstall.sh
The FLEXlm license daemon is not currently supported for Intel EM64T. This daemon is only needed if floating licenses are in use; in this case, the license server should be installed on a system running some other supported operating system. There is no effect on typical users with single user licenses, which do not require a server.
Please click on the link below to see additional notes and known limitations in the latest version of the compiler.
Registration Center
".
For information about the Intel C++ Compiler's Users Forums, FAQ's, tips and tricks, and other support information, please visit: http://support.intel.com/support/performancetools/c/linux/. For general support information please visit http://www.intel.com/software/products/support/.
Submit
" button.
I Accept
" button.
Go
" button next to the "Product
" drop-down
list.
Submit Issue
" link in the left navigation bar.
Development Environment (tools,SDV,EAP)
" from the "Product
Type
" drop-down list.
Intel(R)
C++ Compiler, Linux*
" from the "Product Name
" drop-down
list.
> uname -a
> rpm -qa | grep glibc
rpm
installed, use the command below: > ls /lib/libc*
Get the Intel C++ Compiler's Package ID with the following commands:
> icc -V
And copy the "Package ID" (e.g. l_cce_p[c]_8.1.xxx
)
from the output into the corresponding Premier Support field. Please include
any other specific information that may be relevant to helping us to reproduce
and address your concern.
<package ID>_README
(e.g. l_cce_p[c]_8.1.xxx_README
),
available for download from Intel® Premier Support, https://premier.intel.com,
to see which issues have been resolved in the latest version of the compiler.
Information on Intel software development products is available at http://www.intel.com/software/products.
Some of the related products include:
INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. Intel products are not intended for use in medical, life saving, life sustaining, critical control or safety systems, or in nuclear facility applications. Intel may make changes to specifications and product descriptions at any time, without notice.
This Release Note, as well as the software described in it, is furnished under license and may only be used or copied in accordance with the terms of the license. The information in this manual is furnished for informational use only, is subject to change without notice, and should not be construed as a commitment by Intel Corporation. Intel Corporation assumes no responsibility or liability for any errors or inaccuracies that may appear in this document or any software that may be provided in association with this document.
Designers must not rely on the absence or characteristics of any features or instructions marked "reserved" or "undefined." Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them.
The software described in this Release Note may contain software defects which may cause the product to deviate from published specifications. Current characterized software defects are available on request.
Intel SpeedStep, Intel Thread Checker, Celeron, Dialogic, i386, i486, iCOMP, Intel, Intel logo, Intel386, Intel486, Intel740, IntelDX2, IntelDX4, IntelSX2, Intel Inside, Intel Inside logo, Intel NetBurst, Intel NetStructure, Intel Xeon, Intel XScale, Itanium, MMX, MMX logo, Pentium, Pentium II Xeon, Pentium III Xeon, Pentium M, and VTune are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.
* Other names and brands may be claimed as the property of others.
Copyright © 2005, Intel Corporation. All rights reserved.