Jul 20, 2023

Intel C/C++ compiler, set up to produce native FreeBSD binaries

This is Intels C/C++ compiler, it is set up to produce native FreeBSD binaries.

FreeBSD offers a wide range of ports to choose from, all designed to make your work easier and more efficient. Among these valuable ports, we find lang/icc, or Intel C/C++ Compiler ICC. The ICC is renowned for its speedy performance and excellent parallel processing capabilities, ideal for those working with high-performance computing or multi-core systems. In addition to outstanding performance, it also offers superior compatibility with commonly used C/C++ languages, making it an optimal tool for most FreeBSD users.

In this article, we will walk you through the process of installing and using this FreeBSD port, highlighting its many benefits and features along the way.

To ensure the best reading experience, we’re using the well-recognized Markdown syntax formatting throughout this text. If you’re unaware of Markdown’s functionality, it’s essentially a lightweight markup language used to format text as you write. You can think of it like a text-to-HTML conversion tool for web writing.

Installation Process

To install lang/icc on your FreeBSD system, you first need to navigate to the ports directory. You can do this by typing cd /usr/ports/lang/icc/ in your terminal. Once you’ve correctly navigated to the directory, run the command make install clean to start the installation process.

cd /usr/ports/lang/icc/
make install clean

Please note that FreeBSD’s ports tree must already be installed and updated on your system. If you haven’t done so, you can install it using the portsnap tool.


After successful installation, you can now configure Intel’s Compiler ICC. It’s generally recommended to add ICC’s directory to your PATH. This step ensures that the system recognizes ICC as a command from any location.

To add the ICC to your PATH, include this line to your .cshrc file

set path = $path /usr/local/icc/bin/

Then, execute the .cshrc file with the source command

source ~/.cshrc

How To Use

The basic usage of ICC mimics that of most Unix-based compilers. Once you have your C or C++ programs prepared, you can compile them using the icc command, followed by the filename.

icc yourfilename.c -o outputname

In this command, yourfilename.c should be replaced with the file you want to compile, and outputname should be the name of the output file generated by the compiler.

ICC also offers several options for code optimization, parallel processing, and warnings during compilation.

ICC’s Benefits

The prowess of ICC lies in code optimization and its ability to manage parallel tasks efficiently. ICC’s multi-core, multi-threading capabilities allow it to easily handle CPU-heavy tasks, which is beneficial for high-performance computing. Its compatibility with various C/C++ languages enhances its appeal to a wide range of FreeBSD users.

Another edge ICC has over other compilers is its robust integration possibilities. You might want to use it with the FreeBSD port devel/ninja [Fetch here]https//freebsdsoftware.org/devel/ninja.html for a significant speed boost.


FreeBSD’s lang/icc provides an adept, high-performance C/C++ compiler to residents of FreeBSD. Its superior command options are designed for code optimization that ensures efficient use of system resources, particularly in multi-core and high-performance computing environments.

We hope this guide encourages you to explore ICC and other valuable tools available in the FreeBSD ports collection. As mentioned before, tools like nmap for [IT security]https//freebsdsoftware.org/security/nmap.html can further enhance FreeBSD’s flexibility and power.

Explore, experiment, and optimize your FreeBSD working environment with these potent tools, and elevate your productivity skills to unprecedented heights!

Checkout these related ports:
  • Zig - Language designed for robustness, optimality, and maintainability
  • Zephir - Zephir is a transpiled language used for creating C-extensions for PHP
  • Ypsilon - Scheme implementation for real-time applications
  • Yorick - Interpreted language for scientific simulations
  • Yap - High-performance Prolog compiler
  • Yap-devel - High-performance Prolog compiler
  • Yabasic - Yet another Basic for Unix and Windows
  • Voc - Vishap Oberon Compiler for Oberon-2
  • Vala - Programming language and compiler that converts Vala code into C code
  • V8 - Open source JavaScript engine by Google
  • V8-beta - Open source JavaScript engine by Google
  • V - V Programming Language
  • Urweb - Ultimate host for embedded domain-specific languages
  • Ucc - C Compiler Which Implements the ANSI C89 Standard
  • Twelf - Meta-logical framework for deductive systems