Advanced C Programming

Spring 2024 ECE 26400 :: Purdue University

This is a PAST SEMESTER (Spring 2024).

Setup

Throughout ECE 264, you will be working via an SSH terminal connection to eceprog.  You can connect to this address:
eceprog.ecn.purdue.edu.

Overview

  1. (Windows) Install and configure PuTTY
  2. Connect to eceprog
  3. Install the course Bash configuration files

(Windows) Install and configure PuTTY

  1. From the PuTTY download latest release page choose the 64-bit MSI (‘Windows Installer’).
  2. Run PuTTY and create a saved session as follows:
    1. Session » Host Name » yourUsername@eceprog.ecn.purdue.edu
    2. Connection » Data » Terminal-type string » xterm-256color
    3. Window » Appearance » Font » Lucida Console
    4. Window » Behavior » Full screen on Alt-Enter
    5. Window » Colours » Allow terminal to use xterm 256-colour mode » (make sure it is checked)
    6. SSH » X11 » Enable X11 forwarding
    7. SSH » X11 » X display location » localhost:0
    8. Session » Saved Sessions » 264
    9. Session » Saved Sessions » click Save
  3. Create a shortcut on your desktop.
    1. Right-click your desktop. » New » Shortcut
    2. Enter "C:\Program Files\PuTTY\putty.exe" -load 264

Note:  The first two "Window" configurations are optional, but recommended. The options related to X11 won't be important until/unless you want to use the DDD debugger later in the semester.

Connect to eceprog

Linux / Mac: Open your console (aka "Terminal") and enter ssh yourUsername@eceprog.ecn.purdue.edu. It should prompt for a password.

Windows: Double-click the shortcut you just created. You should get a PuTTY window asking for your password.

When prompted for a password, enter password,Duo code where password is your Purdue password, and Duo code is a 6-digit code you get from the Duo app on your phone. For example, if your password were H3!!0Wurld and the Duo app gave you the code 264375, then you would enter H3!!0Wurld,264375 .

Other password formats (e.g., password,push or password,Boilerkey PIN) might also work, but password,Duo code is the only way that has worked consistently for Prof. Quinn.

Install the course Bash configuration files

This step will install our starter .bashrc and .bash_profile configuration files in your home directory. You can preview them here: .bashrc, .bash_profile Among other things, these ensure that you can access the 264get and 264submit commands, which you will need for every assignment. They also set up a few shortcuts, which we think you will find useful when working in bash (your command line on eceprog) and vim (programming editor).

If you already have a .bashrc and/or .vimrc file that you like, just add these two lines to your .bashrc:
export PATH=$PATH:/home/shay/a/ece264/24sp/bin
alias gcc='gcc -g -std=c11 -Wall -Wshadow -Wvla -Werror -pedantic'
If you do that, you can ignore the instructions below, though you will not have some of the shortcuts and other niceties we will be referring to in class.
  1. Enter the following commands to install starter files provided by the instructor. If you are using PuTTY, you can paste these in by right-clicking the screen.
    cp -i ~ece264/24sp/.bashrc ~
    cp -i ~ece264/24sp/.bash_profile ~
    cp -i ~ece264/24sp/.vimrc ~
    chmod 600 .bashrc .bash_profile
    The first three commands copy the files from a shared directory. The last command sets the permissions so others can't see their contents.
  2. Log out and log back in to let your .bashrc changes take effect.
  3. Create a new directory for your 264 files. We will assume your directory is called 264.
    mkdir 264
    cd 264
    The first command creates a directory called 264. The second command changes into it.

Updates

1/10/2024
  • Password instructions were updated.
  • Server name was updated to eceprog.ecn.purdue.edu.