Monday, February 20, 2012

Creating C and C++ Projects using Net Beans

Requirements

To this tutorial, you need the following software and resources.
Software or Resource Version Required
  • NetBeans IDE         
  • version 6.9 with NetBeans C/C++ plugin
  • Java Developer Kit (JDK)
  • version 6
  • C and C++ compilers, make, gdb
  • C/C++ Tool Collections Tested with NetBeans IDE

Sample Projects
Just want to play with some projects? In the IDE, choose File > New Project, then open the Samples category, the C/C++ subcategory, and the C/C++ subcategory. The IDE provides several sample C and C++ projects to help you familiarize yourself with the IDE.

Creating C and C++ Projects

NetBeans C/C++ support lets you create C and C++ Application and Library projects with generated makefiles, as well as C and C++ projects with existing sources.
You can build, run, and debug your project on the local host (the system from which you started the IDE) or on a remote host running a UNIX® operating system. For information on specifying the tool collection for your project, and on defining and using remote hosts.
With a C/C++ Application, Dynamic Library, or Static Library project, the IDE controls all aspects of how your application is built, run, and debugged. You specify project settings when creating the project and in the Project Properties dialog box. The IDE generates a makefile in which all of your settings are stored.

Creating a C/C++ Application Project

  1. Open the New Project wizard by choosing File > New Project.
  2. In the wizard, select the C/C++ category.
  3. The wizard gives you a choice of several types of new projects. Select C/C++ Application and click Next.
  4. Screenshot of the New Project
           Wizard
  5. Create a new C/C++ Application project from the wizard using the defaults. You can choose the name of the project and the location of the project.
  6. Click Finish to exit the wizard.
A project is created with logical folders. A logical folder is not a directory. It is a way for you to organize your files and does not reflect where the files are physically stored on disk. Files added to logical folders are automatically part of the project and are compiled when you build the project.
Files added to the Important Files folder are not part of the project and are not compiled when you build the project. These files are just for reference and are convenient when you have a project with an existing makefile.

Switching Between the Logical View and the Physical View of the Project

A project has both a logical and a physical view. You can switch between the logical view and the physical view of your project.
  1. Select the Files tab. This window shows the physical view of your project. It displays files and folders as they are stored on disk.
  2. Screenshot of the Files tab
  3. Select the Projects tab. This window shows the logical view of your project.
  4. Screenshot of the Projects tab
    Most commands that you run on a project are available in the Projects view, not the Files view.

Adding Files and Folders to Your Project

You can add logical folders to your project.
  1. Right-click the project node of your Application project and choose New Logical Folder. A new logical folder is added to the project.
  2. Right-click the new logical folder and select Rename. Type the name you would like to give the new folder.
You can add both files and folders to an existing folder. Logical folders can be nested.

Adding New Files to Your Project

You can add new files to your project.
  1. Right-click the Source Files folder and choose New > C Source File.
  2. On the Name and Location page of the New File dialog box, type newfile in the File Name field.

    Screenshot of the New File dialog
              box

  3. Click Finish.
The newfile.c file is created on disk in the directory specified in the wizard and added to the Source Files folder. You can add any kind of file to this folder, not only source files.

Adding More New Files to Your Project

  1. Right-click the Header Files folder and choose New > C Header File.
  2. On the Name and Location page of the New File dialog box, type newfile in the File Name field.
  3. Click Finish.
The newfile.h file is created on disk in the directory specified in the wizard and added to the Header Files folder.

Adding Existing Files to Your Project

You can add existing files to your project in two ways:
  • Right-click the Source Files folder and choose Add Existing Item. You can point to an existing file on disk using the Select Item dialog box and add the file to the project.
  • Right-click the Source Files folder and choose Add Existing Items from Folders. Use the Add Files dialog box to add folders that contain existing files.
Do not use New menu item to add existing items. The Name and Location panel will tell you the file already exists.

Setting Project Properties


When the project is created, it has two configurations, Debug and Release. A configuration is a collection of settings used for the project, which allows you to easily switch many settings at once when you select a configuration. The Debug configuration builds a version of your application that includes debug information. The Release configuration builds an optimized version.
The Project Properties dialog box contains build and configuration information for your project. To open the Project Properties dialog box:
  • Right-click the project node of the CppApplication_1 project and choose Properties.
  • Screenshot of the Project
              Properties dialog box
You can modify the build tool defaults, compiler settings, and other configuration settings in the Project Properties dialog box by selecting a node in the left panel and modifying the properties in the right panel. Select some of the nodes and property values and notice the properties you can set. When you set General properties, you are setting them in all configurations of the project. When you set Build, Run, or Debug properties, you are setting properties in the currently selected configuration.

Managing Configurations

Properties changed in the Project Properties window are stored in the makefile for the current configuration. You can edit the default configurations or create new ones. To create a new configuration:
  1. Click the Manage Configurations button in the Project Properties dialog box.
  2. In the Configurations dialog box, select the configuration that most closely matches your desired configuration. In this case, select the Release configuration and click the Duplicate button. Then click Rename.
  3. In the Rename dialog box, rename the configuration to PerformanceRelease. Click OK.
  4. Click OK in the Configurations dialog box.
  5. In the Project Properties dialog box, note that the PerformanceRelease configuration is selected in the Configuration drop-down list.
  6. In the left panel, select the C Compiler node.
  7. In the property sheet in the right panel, change the Development Mode from Release to PerformanceRelease. Click OK.
You have created a new configuration that will compile the application with a different set of options.

Setting Source File Properties


When you set the project properties for your C or C++ project, the relevant properties apply to all files in the project. You can also set some properties on individual files.
  1. Right-click the newfile.c source file in the Projects window and choose Properties.
  2. Click the General category and see that you can specify a different compiler or other tool to build this file. You can also use a checkbox to exclude the file from the build of the currently selected project configuration.
  3. Click the C Compiler category and see that you can override the project compiler settings and other properties for this file.
  4. Cancel the File Properties dialog box.

Setting the Main Project

When you right-click a project node in the Projects window, you get a pop-up menu of actions you can perform on the selected project. If you have multiple projects open at the same time, the pop-up menu for a project node implies you are operating on that project. But what about project-related actions on the menubar and toolbar?
Most of the project-related actions on the menubar and toolbar operate on the main project. The main project node is displayed in bold text in the Project window. If you have multiple projects open, you might want to change which project is set as the main project so that you can use the toolbar actions on the project.
To change the main project in the IDE:
  • Right-click the desired project node and choose Set as Main Project. This project is now the main project in the IDE and actions in the menubar and toolbar refer to this project.

Building Your Project

To build your project:
  1. Choose Run > Build Main Project and the project builds. The build output is shown in the Output window.
  2. Switch the configuration from Debug to PerformanceRelease in the configuration drop-down list in the main toolbar. Now the project will be built using the PerformanceRelease configuration.
  3. Choose Run > Build Main Project and the project builds. The build output is shown in the Output window.
You can build, clean, or both clean and build the project by choosing actions from the Run menu. The project also keeps object files and executables from different configurations separate, so you do not have to worry about mixing files from multiple configurations.

Compiling a Single File

To compile a single source file:
  • Right-click on the main.c file and choose Compile File. Only this file is compiled.
Single file compilation is not supported for the project type C/C++ Project With Existing Sources.

Running a Project

To see how to run a project, you will use the IDE's sample Arguments project. The Arguments program prints command-line arguments. Before running the program, you will set some arguments in the current configuration. Then you will run the program.
To create the Arguments project, set some arguments, and run the project:
  1. Choose File > New Project.
  2. In the project wizard, expand the Samples category.
  3. Select the C/C++ subcategory, then select the Arguments project. Click Next, then click Finish.
  4. Right-click the Arguments_1 project node and choose Build. The project builds.
  5. Right-click the Arguments_1 project node and choose Properties.
  6. In the Project Properties dialog box, select the Run node.
  7. In the Arguments text field, type 1111 2222 3333. Click OK.
  8. Screenshot of the Project Properties
           dialog box
  9. Choose Run > Run Main Project. The application runs. Your arguments are displayed in an external terminal window.
  10. You may notice the Run Monitor tab, which opens when you run the project. The Run Monitor displays the profiling tools that are available on Linux and Solaris platforms for observing your application's behavior. If you are following this tutorial on Windows or Mac OS X you see a message "To use this feature, the development host operating system must be Solaris or Linux."
    You can turn off the profiling tools using the project's properties Profile category.

Creating a C/C++ Project With Existing Sources

When creating a C/C++ Project With Existing Sources, the IDE relies on your existing makefile for instructions on how to compile and run your application.
In this exercise, you download and install the sources for the open source Loki C++ library. Loki requires the Pthreads library to build, which is available by default on Linux, Solaris, and Mac OS X. If you are using Windows, the Pthreads library must be downloaded before you can create a project using the Loki source files.

Creating a Project With Existing Sources

  1. If you are running the IDE on Windows, install the Pthreads library from http://sourceware.org/pthreads-win32. For convenience, you can use this direct link to the pthreads-2005-03-08.exe installer.
    Extract the pthreads library in your Windows user directory.
  2. Download the loki-0.1.7 library from http://sourceforge.net/projects/loki-lib.
  3. Uncompress loki-0.1.7 in a directory of your choice.
  4. Open the New Project wizard by choosing File > New Project.
  5. Select the C/C++ category.
  6. Select C/C++ Project With Existing Sources and click Next.
  7. On the Select Mode page, click the Browse button. In the Select Project Folder dialog box, navigate to the directory where you saved loki-0.1.7. Select the loki-0.1.7 directory. Click Select.

    Screen shot of Makefile and
           Select Mode page of Project Wizard

  8. Use the default Configuration Mode, Automatic. Click Finish.
  9. The project is created and opened in the Project window, and the IDE automatically runs the Clean and Build actions specified in the existing Makefile. The project is also automatically configured for code assistance. Screen shot of successful
           make of Project with Existing Sources

Building and Rebuilding Your Project

To build the project:
  • Right-click the project node of the project and choose Build.
To rebuild the project:
  • Right-click the project node of the project and choose Clean and Build.