Lecture 1
Rules
You can only use the following approved packages on the Ubuntu virtual machine.
- dos2unix
- git
- gitk
- git-core
- libssl-dev
- tcsh
- tmux
- traceroute
- valgrind
- vim
- wireshark
- Regrades must be submit within 1 week of the grade being posted
Assignments
- Makefile requirements
- You must describe how to compile your code in the
README.mdof your submission - You must use the original
g++version that came pre-installed with the virtual machine. - You must include the arguments
-g -Wall -std=c++11 -DLOCALHOST=\"localhost\"in your Makefile.- According to this Piazza post you can use
std=c++17if you specify so explicitly in your Makefile
- According to this Piazza post you can use
- The
-DLOCALHOSTis only required for a networking-related assignment. - You must eliminate all compile-time warning messages.
- Do not hardcode filepaths in your program, or assume that they are short in length.
- Use the
FILENAME_MAXmacro constant to determine the length of the array
- Use the
- You must describe how to compile your code in the
- The filename you must use for a README is
pa#-README.txtwhere#is the assignment number.
- The filename you must use for a README is
- Do not include binary files in your submission, otherwise points will be deducted.
Grading policy for program assignments
- Submissions are not required to be free of memory leaks.
- Submissions made at least 72 hours before the submission deadline are awarded 10% extra credit.
You are allowed to submit 3 modifications to your assignment but you must do so within 24 hours of the submission deadline. You will not incur a penalty. So, sending a "modification request" will not change the timestamp of the graded submission.
Assignment 1
- All cells in the maze are guaranteed to be reachable
Labs
Each lab is due at 11:45pm on a Monday.
Multiple submissions are allowed
Each lab is worth 5 points.
Lab grading is not as strict as PA grading. If your printout generally looks like it has the right information, the grader won't take points off.
Lab 1
Print what system you are running on
cat /etc/os-release
Resources
Installation instructions for Ubuntu
username:
studentpassword:
student
Course producers
Will teach you how to learn to use the GDB debugger
Have extensive experience with networking and Unix/Linux system calls
Won't help you write/debug your code