Use Makefiles for Compilation
This topic describes the use of makefiles to compile your application. You can use makefiles to specify a number of files with various paths, and to save this information for multiple compilations.
Use Makefiles to Store Information for Compilation on Linux*
To run
make
from the command line using the
Intel® oneAPI
, make sure that
DPC++/C++
Compiler/usr/bin
and
/usr/local/bin
are in your
PATH
environment variable.
If you use the C shell, you can edit your
.cshrc
file and add the following:
setenv PATH /usr/bin:/usr/local/bin:$PATH
To use the
. Use the same setting on the command line to instruct the makefile to use the compiler. If your makefile is written for GCC*, you need to change the command line options that are not recognized by the compiler. Run
Intel oneAPI
, your makefile must include the setting
DPC++/C++
CompilerCC=icx
(for C),
CC=icpx
(for C++), or
CC=dpcpp
(for DPC++)make
, using the following syntax:
make -f yourmakefile
Where
-f
is the
make
command option to specify a particular makefile name.
Use Makefiles to Store Information for Compilation on Windows*
To use a makefile to compile your source files, use the
nmake
command with the following syntax:
nmake /f [makefile_name.mak] CPP=[compiler_name] [LINK32=[linker_name]
For C/C++ projects:
-OR-prompt> nmake /f your_project.mak CPP=icx LINK32=link
prompt> nmake /f your_project.mak CPP=icx LINK32=xilink
For DPC++ projects:
prompt> nmake /f your_project.mak CPP=dpcpp-cl LINK32=dpcpp-cl
if you have
link/xilink
specific options that are not accepted by
dpcpp-cl
, ensure any linker specific options are placed after the
/link
option. For example:
dpcpp test.obj <compiler options> /link <linker options>
Argument
| Description
|
---|---|
/f | The
nmake option to specify a makefile.
|
your_project.mak | The makefile used to generate object and executable files.
|
CPP | The preprocessor/compiler that generates object and executable files. (The name of this macro may be different for your makefile.)
|
LINK32 | The linker that is used.
|
The
nmake
command creates object files (.obj
) and executable files () from the information specified in the
your_project.mak
makefile.