Make sure to set up the infrastructure and your favorite debuggers ahead of the study! * First, follow instructions on 'installation and setup' * Check whether your debugging tool or IDE works with our source code! * Check whether the links to the questionnaires work (/root/Desktop/grep*/readme.txt). _________________________ HOW TO ACCESS THE DESKTOP * Install VNC Viewer: https://www.realvnc.com/download/viewer/ ** Execute './run.sh grep’ ** Note down the VNC Viewer address. ** Install editors: 'apt-get update; apt-get install -y gedit; wget --no-check-certificate https://raw.githubusercontent.com/TCattd/sublime-text-linux-installer/master/st3install && chmod +x st3install && ./st3install' ** Start VNC Viewer from your Desktop ** Use the VNC Viewer address from './run.sh grep’ ** Password: corebench _______________ TROUBLESHOOTING * If you cannot connect to VNCViewer, run on host: 'docker inspect debugstudy0 | grep IPAddress', add port 5900 * If you get "Error response from daemon: Conflict" run 'docker restart debugstudy0' * If you installed Docker on an Ubuntu Host and cannot set breakpoints, ** Copy sources and binaries to the HOST machine: mkdir source for i in $(seq 1 14); do docker cp debugstudy0:/root/Desktop/grep$i source; done * If you have other images running when switching between subjects, execute "docker images" to obtain the ids of all images, find which "debugstudy" or "debug/grep" images that may need to be removed. __________________________ HOW TO INSTALL ECLIPSE IDE * Install Java: apt-get update; apt-get install -y default-jre * Download Eclipse: https://eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/mars/1/eclipse-cpp-mars-1-linux-gtk-x86_64.tar.gz * Unzip Eclipse: tar -zxvf eclipse-cpp-mars-1-linux-gtk-x86_64.tar.gz * Open Eclipse and choose 'Import from Makefile' for any one error. * Check out: http://help.eclipse.org/mars/index.jsp?topic=%2Forg.eclipse.cdt.doc.user%2Ftasks%2Fcdt_t_debug_exes.htm _________ DEBUGGING * Find buggy binary in /root/Desktop/grep*/grep/src/grep * Find buggy source in /root/Desktop/grep*/grep/src/*.c * Find link to questionaire and instructions in /root/Desktop/grep*/readme.txt * EACH ERROR HAS ITS OWN LINK! * Solve at least 11 of 14 bugs. * Write down the time, you spend debugging each error! * If you can't figure it out, you can pause for this error, go to another one, and resume later. * We suggest to use the debugger to step through the buggy execution and understand the source code. * We suggest to fix the segmentation faults first