Update: 3 March 2020

NetBeans 8.2 seems to have stopped working under Raspian (Buster). It installs but wont open a new project. It still works under Windows 10. 

As NetBeans 11.2 works perfectly on the Pi there is no reason to continue to try and make the unsuported version work. Follow the instructions to install it on the Pi given below. 

The NetBeans 8.2 plugin library is include but you have to enable it. Make sure you click the check for newest buttons after enabling it.

Select the C++ plugin and install it. 

After this you can run NetBeans - the script in the bin directory - as usual.

I understand the the Apache team are working on native support for C/C++ but it probably wont be complete until version 12 some time this year.

Original Information

NetBeans has been moved to Apache and Oracle are slowly moving the source code of the project to its new home. At the moment they haven't made the C/C++ code available but the old plug in works. What this means is that you have two choices. However before this you need to make sure you have a JDK installed:

NetBeans is a Java program that will work on any machine that supports a Java Virtual Machine (JVM) and the Pi comes with a JVM already installed as part of Raspbian. If you are installing NetBeans on a PC or a Mac you need to check that Java is installed and if it isn't you need to install it.

To check open a command prompt, this works for Windows, Linux and Mac OSX, and type:

java -version

If you don't see a listing something like:

openjdk version "11.0.3" 2019-04-16 LTS
OpenJDK Runtime Environment Corretto-11.0.3.7.1 (build 11.0.3+7-LTS)
OpenJDK 64-Bit Server VM Corretto-11.0.3.7.1 
                               (build 11.0.3+7-LTS, mixed mode)

then either Java isn't installed or it is miss configured. Consult the documentation on the website of the JDK you are using. You can use any JDK from 9 though 12.

If you haven't got Java working there is no point moving on to install NetBeans as it simply will not work.

  • You can stay with NetBeans 8.x and use the original Oracle downloads and installers. This makes it very easy to install and it all works exactly as described in the book. There is no particular disadvantage of this approach as there is nothing in NetBeans 11 that you need to work with C/C++.

You can find the 8.x series of NetBeans by following the Older releases link on the Apache download page.

It is currently here but given the changes occurring it could well change and you might need to visit what ever the current download page is.

A direct link to NetBeans 8.2 can be used but it might change - if so check out the new main download page.

As described in the book download the C/C++ version or the complete version.

 

  • The second option is to download and install the latest version of NetBeans - 11.x at the time of writing. 

If you do this it doesn't have the C/C++ option included and you have to set it up so that it makes use of the 8.2 plugin.  

The procedure described below works for Raspian, Linux, Windows or OSX.

Go to the NetBeans web site https://netbeans.apache.org and navigate to the download page. Select the latest version and download the zip listed as "Binaries". Its name should be something like:

netbeans-11.1-bin.zip 

according to the version number. You will also see installers for various operating systems at the time of writing there isn't an installer for Raspian and the other installers often fail to find the installed JDK - working with the binary is just as easy.

After the download is complete you have to extract the files in the zip to a suitable directory. If you are the only person going to use NetBeans then your Linux home directory or Program Files under Windows is suitable. Extract all of the files into the directory.

Navigate to the directory and then netbeans/bin and run the file netbeans for a Linux installation or netbeans.exe or netbeans64.exe for a 32 or 64 bit Windows installation. These small programs install NetBeans and subsequently runs the IDE after installation. Run it in a terminal, accept the license agreement and wait while it installs.

At this point you will have a working NetBeans IDE and you can use it to create Java, PHP and JavaScript programs but, at the time of writing the C/C++ plugin is not installed and an upgraded version isn't available. As a temporary solution you have to use the original 8.2 plugin - this is likely to change as the NetBeans project develops.

All you have to do is use the Tools | Plugins menu option and, in the Settings tab of the dialog box that appears enable the NetBeans IDE 8.2 update center. If it isn't in the list for any reason add:

http://updates.netbeans.org/netbeans/updates/8.2/uc/final/distribution/catalog.xml.gz

Next go to the Available Plugins tab and click the Newest button to update the list. It is also worth selecting the Updates tab and click the Check For Updates tab to make sure everything is up-to-date before installing the plugin. Search for or find the C/C++ plugin, select it and click the install button. Follow the installers instruction and allow it to install and upgrade everything it wants to.

 

If installation fails make sure you have all of the other plugins up-to-date and try again or check to see if it works after up-date.

If you are using NetBeans under Raspian you can add it to the Programming group in the menu. All you have to do is select Preferences, Main Menu Editor. Then select the Programming group and select New Item. Fill in the dialog that appears as shown:

 

The command is:

/home/pi/netbeans/bin/netbeans 

adjusted to reference your home directory rather than that of user pi if necessary. After this you can run NetBeans from the menu. If you want to add an icon then simply right click on the menu item, select properties and click on the default icon. Next simply navigate to /home/pi/netbeans/nb/ and select netbeans.icon.

If you are using NetBeans on a Pi then you can now create a new C/C++ project as described in a later section. If you are using NetBeans on a deskopt machine you now need to setup a remote connection to a Pi to work with C/C++.