You must use the virtual machine (VM) specifically provided for this class. You can install it on your laptop regardless of your operating system, and use it for the entire semester. We will grade everything on this VM's compiler version and environment so it is critical you check your code on this system before submitting.
Read This First
- Never install updates on the Linux VM. If it asks you, just say no!
- Never checkout a Git repository into a Dropbox or other sync'ed folder (Google Drive, etc.)
- If you can't seem to connect to the Internet on your VM but your laptop OS can, simply reboot the VM (not your laptop). Most of the time this will allow your VM to reconnect.
- We will grade your assignments on the VM. If your code does not compile on the VM, we will not try to fix it and you may get a 0. Consider yourself officially warned!
- If VirtualBox cannot start your VM after it is imported you may need to enable virtualization in your BIOS which can be accessed on Win8 or 10 by following these steps. Look for the setting called "virtualization", "VT-x" or "AMD-V" and enable them To be able to resize the Virtualbox window and have the display resize appropriately you may have to install the 'Guest Additions' on the VM. See below for details.
- Be sure you have a Github account and configured your profile appropriately. See the instructions here.
- Ensure you have let us know about your Github Account by filling out this form.
- To run this virtual machine you will need to download Oracle VirtualBox.
- After installing VirtualBox, download and install the extension pack, available on the same downloads page
- Next download the virtual machine image. We recommend using 'curl' which is already installed on Mac and Linux machines. (A Windows version is available here.
curlis a command line utility to download files from the Internet. Go to a folder where you want to download the file and start a command prompt (Windows) or Terminal there. Then run the command
curl http://bits.usc.edu/files/cs103/install/csci350.ova -o csci350.ova
- Alternatively, use the actual download link. Using curl is recommended because browser downloads might disconnect unexpectedly.
- [Optional] Download an MD5 hash verification program. Compute the MD5 of the
.ovafile you downloaded (with such a big file sometimes bits get corrupted that will cause the VM to be unable to install). Verify the MD5 has matches the original MD5 value:
- Follow the instructions indicated at this link for setting up your VM
- If you encounter errors starting your VM go to the Troubleshooting Section and then resume these directions.
- When you shutdown your VM NEVER "Save the State" of the machine but instead "Power off" the machine or send the "Shutdown Signal"
- In your Linux VM do NOT install any updates or upgrades to the OS or other source if it prompts you. Just use the VM as it is.
- DO install the “Guest Additions” to your Linux VM. This will allow you resize the resolution/window and also support shared folders between your Host and Guest OSs. To do this, start your VM and click the Devices Menu..Install Guest Additions. You may have to enter your password (“developer”) or hit ‘Enter’ once or twice, but other than that it will just run and take a few minutes. When complete it will say “Hit Enter to close the window”. At this point restart your VM and everything should be working.
In this section, we briefly go over common problems with VirtualBox and Ubuntu.
- In the “Settings” menu, if there is a sign at the bottom of the window that reads “non-optimal”, it means you have chosen a wrong setting. Hover your mouse over the warning message to get the details.
- The error “Failed to install NtCreateSection monitor” on Windows can be due to a known bug. Try downloading the test build here.
- Error “VT-x features locked or unavailable in MSR”: You need to enable Virtualization for your laptop. If you don’t do this, Ubuntu won’t be able to take advantage of all your CPU power. Usually virtualization is disabled by default on PC laptops and enabled by default on Mac laptops. Here is how to enable it on Windows:
- Enter the bios settings. This is different from laptop to laptop so you have to Google it and find the instruction for your make and model. For example something like this “Laptop HP dv6 bios virtualization”. Usually, you have to keep pressing F2, F10, or something similar at the very beginning of your laptop power on. This is before Windows starts.
- Find the “Virtualization” setting in the sub menus and set it to “ON” or “Enable”.
- Save and Exit.
- Older laptops might not have a virtualization option. In that case switch back to single-core VM.
- If problems still persist, try uninstalling VirtualBox 4.3.18 in favor of an older version 4.3.12 or 4.3.14 (start with 4.3.12) available at the Older Build Site. Once you've uninstalled 4.3.18 and reinstalled 4.3.12 or 14, then re-import the VM image (course-vm-2014.ova)
- If you can't connect to the Internet from your VM, simply try rebooting the VM (not your whole PC). When the wireless connection changes the VM seems to be unable to pick up the new connection w/o a reboot.