Coverity 2020.09: Platforms, Languages, and Compilers

Support for platforms, languages and compilers is different for Coverity on Polaris, compared to standard Coverity.

The requirements and capabilities for Coverity on Polaris are not identical to stand-alone Coverity.

Platforms

This table describes one set of requirements necessary to run both Polaris CLI Scan Client and Coverity tools. The Polaris CLI should not be installed if these requirements are not met.

Coverity 2020.09 Notes
Linux 64-bit kernel, version 2.6.32 and later with glibc 2.12-2.27 Debian GNU/kFreeBSD is not supported.
macOS OSX 10.13, 10.14 10.15 Deprecation notice: Support for macOS 10.13 was deprecated as of 2020.06.
Windows x86_64, Version 8.1 and later and Windows Server 2012 and later Coverity tools run notably slower on Windows than on other operating systems, such as Linux.

Supported Languages

Coverity 2020.09 Notes
C/C++ Windows, macOS, and Linux. (See compiler info below)
C# Windows, Linux (See compiler info below) Language version up to C# 8.
Objective C Windows, macOS, and Linux. (See compiler info below)
Go Windows, macOS, and Linux. (See compiler info below)
Java Windows, macOS, and Linux. (See compiler info below) Although Coverity is able to support compilers spanning multiple JDK versions, Coverity Analysis requires Oracle Java SE Runtime Environment 8 (JRE-8).
JavaScript Windows, macOS, and Linux Coverity supports the execution of JSHint analyses (through Coverity Analysis for JavaScript) on platforms supported by Node.js 8.11.1.
Kotlin Windows, macOS, and Linux. (See compiler info below)
PHP Windows, macOS, and Linux
Python Windows, macOS, and Linux
Ruby Windows, macOS, and Linux
Swift macOS (See compiler info below)
VB.NET Windows (See compiler info below) Language version up to Visual Basic 16.
Table 1. C/C++ Compiler Support
Coverity 2020.09 Notes
Linux LLVM Clang 3.0–10.0. * Android NDK Clang 3.1–3.4 (NDK revisions r8c-r9d). * FSF GCC 3.0–10.1.0 GCC:
  • ISO/IEC TR 18037 fixed point extensions are supported for C (not C++) code.
  • Versions of any of these compilers that are modified to accept non-standard syntax are not supported.
  • GNU GCC compilers distributed with Apple Xcode are not supported.
  • Deprecation Notice: Support for GNU GCC and G++ 3.0– 3.4.6 is deprecated as of 2020.06 and will be removed in a future release.
clang:
  • Host OS support for Linux is limited to x86_64 when running Coverity on Polaris.
  • Clang 3.3 with Android NDK r9d is not supported, please use clang 3.4 instead.
  • Deprecation Notice: Support for LLVM Clang 3.0–3.6 is deprecated as of 2020.06 and will be removed in a future release.

MSVC:

  • Managed C++ and Common Language Runtime (CLR) are not supported. Compilations with switches beginning with "/CLR" will be skipped.
  • The compiler version can be determined by running the compiler (`cl`) on the command line, which returns detailed information.
macOS LLVM Clang 3.0–10.0. * Android NDK Clang 3.1–3.4 (NDK revisions r8c-r9d). * FSF GCC 3.0–10.1.0
Windows LLVM Clang 3.0–10.0 * Android NDK Clang 3.1–3.4 (NDK revisions r8c-r9d) * FSF GCC 3.0–10.1.0 * Microsoft Visual C++ 2013-2019

C# Compiler Support

Coverity 2020.09 Notes
Linux .NET Core 2.1 and 3.1 n/a
macOS Not supported
Windows

Visual Studio 2013 - 2019

.NET Core 2.1 and 3.1

  • Visual Studio Express editions are not supported.
  • Coverity supports analysis of Windows RT applications.
  • The following KBs must be installed to avoid errors when capturing .NET Core projects or analyzing .NET web applications: For Windows 8.1 or Windows Server 2012 R2 and earlier versions: KB2999226

Objective C Compiler Support

Coverity 2020.09
Linux Not supported
macOS LLVM Clang 3.0–10.0
Windows Not supported

Go Compiler Support

Coverity 2020.09 Notes
Linux Go compiler 1.13-1.14.X
  • Coverity only supports projects that are built with the following commands: go build, go install, go run, and go test.
  • Coverity does not support projects that are built by invoking either go tool compile or gccgo directly. Coverity does not directly recognize custom flags and arguments of go run or go test. In order for Coverity to recognize these custom flags and arguments, you must modify config/templates/go/go_switches.dat.
  • Coverity requires the GOPATH environment variable to be set. Coverity does not support Go modules or Go binary-only packages.
  • The cov-emit-go command might have dependencies on external tools, depending on the Go code being compiled. Refer to the cov-emit-go command in the Coverity Command Reference for details.
macOS Go compiler 1.13-1.14.X
Windows Go compiler 1.13-1.14.X

Java Compiler Support

Coverity 2020.09 Notes
Linux

Sun/Oracle JDK 1.7–1.8, 11, 14

OpenJDK 1.8, 11, 14

  • JDK 1.7 is not supported on Windows 10.
  • Coverity does not support Oracle JRockit JDK.
  • Deprecation notice: Support for Sun/Oracle JDK 13 and Open JDK 13 is deprecated as of 2020.06 and will be removed in a future release.
macOS Sun/Oracle JDK 1.7–1.8, 11, 14
Windows

Sun/Oracle JDK 1.7–1.8, 11, 14

OpenJDK 1.8, 11, 14

Kotlin Compiler Support

Coverity 2020.09 Notes
Linux Kotlin 1.3 - 1.3.71 Coverity only supports Kotlin projects that are targeted to JVM or Android, not other platforms. For multiplatform projects, Coverity only captures Kotlin source files that are targeted to the supported platforms.
macOS Kotlin 1.3 - 1.3.71
Windows Kotlin 1.3 - 1.3.71

Swift Compiler Support

Coverity 2020.09 Notes
Linux Not supported
macOS Compiler: Swift 5.2.x

IDE: Xcode 11.4.x

Minimum HostOS: 10.15.2
  • Coverity Analysis supports Swift compiler invocations via xcodebuild.
  • Swift Package Manager is not supported.
  • When using xcodebuild - UseModernBuildSystem=NO option must be set to emulate legacy capture behavior.
  • Cross-compilation using Mac Catalyst is not supported.
  • Deprecation Notice: Support for Swift 5.2.x is deprecated as of 2020.09 and will be removed in a future release.
Windows Not supported

Visual Basic Compiler Support

Coverity 2020.09 Notes
Linux Not supported
macOS Not supported
Windows

Visual Studio 2013-2019

.NET Core 3.1

  • Visual Studio Express editions are not supported.
  • The following KBs must be installed to avoid errors when capturing .NET Core projects or analyzing .NET web applications: For Windows 8.1 or Windows Server 2012 R2 and earlier versions: KB2999226.
  • Language version up to Visual Basic 16.

Coverity Installation Guides

To find out more about platform and compiler compatibility, see the Coverity 2020.09 Deployment and Installation Guide.