University of Minnesota
CSci 1113: C++ Programming

Various Options For Computer Use in CSci 1113

Below are operating system specific guides on how to efficiently remote connect into a lab machine (called "SSH"ing):

  1. Windows
  2. Mac.

If you are having issues "Executing" the program from geany, Go to "Preferences" -> "Tools" -> Change "Terminal" option to: xterm -e "/bin/sh %c". (This should just be chaning the first word from "x-terminal-emulator" to "xterm".)

Although less reliable, you can connect through any browser (without downloading any software) here:

After logging in, click the "+" for "New Session" and when asked for a "command", just click the mouse picture and it will auto-fill in the appropriate command. If the command is not auto-filling, you can manually enter either "geany" or "startxfce4" (without quotes).

If you prefer to install a compiler for C++ on your own machine, I'd recommend:

  1. Windows
    Download and use Code::Blocks. After following the link above, choose the "binaries" option, then make sure to download the one with "mingw-setup". You will need to make a new "project" for each program (choose "Console application" type of project and make sure the language is set to "C++").

  2. Mac
    Get "Xcode" from the App store. Code::Blocks is also available for Mac (see above).
    In both of these, you will want to create "New Projects" for each problem you do. In XCode select the "Command line" project type (check the different tabs) and make sure the language is set to "C++" and not something like "Objective-C" or "Swift".

Here is more general information. For the individual homework you will need to construct, run, debug, and revise C++ programs. The Keller Hall 1-250, 1-260 and 1-262 lab room are usually used for labs, and so are usually not available during non-lab hours. However, here are three options for doing C++ programming. The lab TAs might be able to give you more information about these options.

  1. Use one of the Linux machines in a CSE lab on campus. This is the preferred option since these machines are set up the same as the lab machines. In particular, there are a large number of Linux machines in the Keller 4-250 lab. This lab is open most of the time (although it does get heavy use at certain times). These machines are set up the same as the lab machines. A list of times labs are available is online.
  2. On your personal computer, 'ssh' into a CSE Lab machine. To do this you either need to already have the appropriate connection software on your personal computer, or need to download it. For more information about ssh see the CSElabs office access help page. What SSH does is that it allows you to connect to a CSE Labs machine from your own computer, making it as if you were actually in front of a Keller Hall computer terminal. If you have ssh installed you should be able to open a terminal window and ssh to one of the CSElabs Linux machines.
  3. Download and install the C++ compiler on your personal computer. You are welcome to do this if you are comfortable downloading and installing software. However, if you develop and run your programs on your personal computer you still need to ensure they run on the Linux machines in the cselabs. Note there are a few (often subtle) differences between different C++ compilers, so even if your program runs on your machine it might not run on the cselab machines. If you develop your code on your own machine make sure to test it on a cselab Linux machine before submitting it.