I have a commute of several hours every day, as a passenger, so figured that I might as well make use of the time and learn C/C++ development on the Pi.

I comfortable & confident happy with C/++ and Linux, but have not yet developed for the Pi.

I have available:

  • a laptop running Windows 10
  • and could run a Linux VM if that helps
  • a Pi Zero W
  • a hand 'phone, which could provide a WiFi hotspot
  • a USB to Ethernet adapter
  • a large screen Android tablet and a BlueTooth keyboard
  • an HDMI cable (maybe use the Android tablet as a display somehow other than VNC?)
  • a USB (laptop end) to UART (pi end) debug cable

I don't mind spending up to $50 or so on further hardware, if necessary.

For the code which I wish to develop, the Pi does not need internet access, and my code will be a GUIless executable.

Firstly, what's the general approach?

  • Run the IDE on host (Windows/Linux)? And use the IDE, TelNet or FTP to load my program to the Pi? That way, I can have a headless Linux distro on the Pi & save some space.
  • Install the IDE on the PI, which will take space & require a desktop to run the IDE, which I do not need to run my executable, then use something like TightVNC from the laptop to access the IDE and code?

For Windows IDEs, I have, and am comfortable with CLion, Eclipse, MS VS, NetBeans, Code::Blocks ... but don't know how to configure them on Host to cross-compile for the Pi. Of course, if the IDE is on the Pi, then I don't have that problem, as the tool-chain will be native.

So, is there an agreed general approach?

And, is it the optimal approach for me on my commute, given the materials to hand?

1 Answer 1


You could ssh over usb. https://desertbot.io/blog/ssh-into-pi-zero-over-usb

Or you can configure the pi to connect to your phone, and do the same with the laptop for wireless ssh.

If you are not using the GPIO or any other pi specific hardware, then really you could just write/test your code in a vm (there is even a x86 version of raspian if you want!) and then the code could be moved over and compiled on the pi when the time comes. Here is the x86 image page https://www.raspberrypi.org/downloads/raspberry-pi-desktop/

But a lot of this depends on what you are trying to learn, if you already know linux/c++ then doing it on the pi is no different. unless you are using the GPIO

  • Wah! I never thought of a VM, that sounds ideal. Eventually, there will be GPIO, but I will abstract it for development and testing. I will give the VM a spin & get back to you, but this sounds very promising. Thanks
    – Mawg
    May 8, 2019 at 21:06
  • RpiZ/W is very slow, comparing to Rpi3B+. I know you don't wish to spend more money, and you have plenty of time. But Rpi is wasting your time which can help you make more money. I once tried RpiZ and RpiZW and gave up after three days. RpiZ is good because of its price and small foot print. But for development, it is a bad choice.
    – tlfong01
    May 9, 2019 at 1:05
  • 2
    That's completely false in the fact that you have no idea what they op or anyone else wants to do with it. Just because it didnt work to devolop YOUR project does not mean that it's not the perfect. As I am writing this I am thinking you ment just for the writing the code side of development, but even still, vim works just fine and if you want to test with gpio as you write the code. Best just to do it in place
    – Chad G
    May 9, 2019 at 5:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.