Compile flags

Typically the user will not need to interact with these flags, but we document them here for completeness. Note this list is not exhaustive, others are not exposed but defined in include/glbopts.h. The list below are defined in scs.mk and can be overridden via the command line when compiling by executing, e.g., make DLONG=1, to set the DLONG flag to True.

Name

Description

Permitted values

Default

DLONG

If True use 64 bit integers, else 32 bit

True/False

0

SFLOAT

If True use 32 bit floats, else 64 bit (WARNING: currently broken)

True/False

0

CTRLC

Listen to CTRL-C interruptions

True/False

1

NO_TIMER

Disables code timing

True/False

0

NO_VALIDATE

Disables data validation

True/False

0

NO_PRINTING

Disables all printing in compiled binary

True/False

0

NO_READ_WRITE

Disables the read/write code

True/False

0

GPU_TRANSPOSE_MAT

If on GPU store A transpose in memory

True/False

1

VERBOSITY

Verbosity level (for debugging)

\(\mathbf{N}\)

0

USE_LAPACK

Whether to link in BLAS/LAPACK

True/False

1

USE_OPENMP

Use openmp to parallelize some computation

True/False

0

USE_SPECTRAL_CONES

Enable spectral cone support (log-determinant, nuclear norm, \(\ell_1\) norm, sum-of-largest-eigenvalues). Requires USE_LAPACK=1.

True/False

0

BLAS64

BLAS/LAPACK uses 64-bit integers (ILP64)

True/False

0

NOBLASSUFFIX

The BLAS library has no function name suffix

True/False

0

BLASSUFFIX

The BLAS library uses this suffix

String

‘_’

MATLAB_MEX_FILE

If compiling for use in MATLAB

True/False

0

PYTHON

If compiling for use in python

True/False

0

USING_R

If compiling for use in R

True/False

0