<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">

<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Creating a makefile</title>
<link rel="stylesheet" type="text/css" href="../help.css">
<script language="JavaScript">
function changeSize(theImage,wd,ht) {
	wdth=parseInt(theImage.style.width); hght=parseInt(theImage.style.height);
	if ( !(wdth==(wd*2)) ) {wdth=wd*2; hght=ht*2;}
	else {wdth=wd;hght=ht;}
	theImage.style.width=wdth; theImage.style.height=hght;
}
</script>
</head>

<body>

<div role="main"><h1>Creating a makefile</h1>

<p>If you have  created a Standard Make C/C++ Project, you need to provide a makefile.</p>

<p>When you build a project, output from make is displayed in the Console view. Makefile actions are displayed in the Make Targets 
view.</p>
<p>To create a makefile:</p>
<ol>
  <li>In the <strong>C++ Projects</strong> view, right-click a project, and select <strong>New &gt; File</strong>.<br>
  <img src="../images/project_new_file.png" alt="New &gt; File in Projects View"></li>
  <li>In the <strong>File name</strong> box, type <strong>makefile</strong>.</li>
  <li>In the list of projects, verify that the correct project is selected.</li>
  <li>Click <strong>Finish</strong>.<br>
  <img src="../images/project_new_file_name.png" alt="New File Wizard"></li>
   <li>The C/C++ editor opens. Type makefile instructions  in the C/C++ editor.<br>
  <img src="../images/project_new_makefile.png" alt="Editor view with a sample code"></li>
  <li>Click <strong>File &gt; 
  Save</strong>.</li></ol>
<p><img src="../images/ngconcepts.gif" ALT="Related concepts" width="143" height="21">
<br>
<a href="../concepts/cdt_c_makefile.htm">Makefile</a><br>
<a href="cdt_o_proj_files.htm">Working with C/C++ project files</a>
</p>
<p><img src="../images/ngtasks.gif" ALT="Related tasks" width="143" height="21">
<br>
<a href="cdt_t_show_proj_files.htm">Displaying C/C++ file components in the 
C/C++ Projects view</a><br>
<a href="cdt_t_prvw_hide_files.htm">Hiding files by type in the C/C++ Projects 
view</a></p>
<p><img src="../images/ngref.gif" ALT="Related reference" width="143" height="21">
<br>
<a href="../reference/cdt_o_views.htm">Views</a></p>
<p>
<img src="../images/ng00_04a.gif" ALT="IBM Copyright Statement" ></div></body>
</div></body>

</html>