2021 January 2,

CS 311: Setup Instructions

I want each student to be able to use their own computer for CS 311. We use OpenGL/Vulkan, so that we don't have to commit to proprietary graphics interfaces such as Microsoft's Direct3D and Apple's Metal. We use GLFW as our window/widget toolkit, so that we don't have to commit to proprietary application interfaces such as Microsoft's .NET and Apple's Cocoa. No matter what your operating system is, you should be able to run my code, and I (and the grader) should be able to run yours.

However, graphics interacts closely with the operating system and the underlying hardware. So in practice it is sometimes hard to get all of the tools working on everyone's computer. It is crucial that you try to set up your computer as soon as possible, so that we have time to troubleshoot.

If All Else Fails

You're going to follow the instructions below for your specific operating system. If you fail, then ask for help. If we really can't get your machine set up, then you'll have to work remotely on Carleton's macOS machines. All of the software is already installed there. It's not ideal — it's slow, and the video compression distorts the colors, and you have to be diligent in saving your data elsewhere — but it works.

macOS

These instructions have been tested on macOS 10.14, 10.15, and 11.

In Apple's App Store, download and install the Xcode developer environment. Among other things, it gives you the Clang C compiler.

Then follow Mike Tie's instructions for installing CMake and GLFW.

Then continue Mike Tie's instructions to install GL3W. If you're rushed for time, then feel free to delay this task for a few weeks. We don't need GL3W until approximately Day 14 of the course.

Finally, you need to obtain a text editor. Popular ones include Atom, BBEdit, and Brackets. You could also use Xcode's text editor. Alternatively, you could use an integrated development environment such as Xcode or CLion.

Windows

You have several options. You might want to read this whole section before you actually start doing any of it.

I recommend that you follow Mike Tie's instructions. They help you run Ubuntu Linux as an application within Windows. It's relatively painless. If you're rushed for time, then feel free to delay the GL3W part of the instructions until the third or fourth week of the course. We don't need GL3W until approximately Day 14. But we need GLFW on Day 01, so be sure to install that part immediately.

When you run Ubuntu as an application within Windows, the Ubuntu file system is stored somewhere inside the Windows file system, and it is deliberately hidden. You can choose one of two workflows:

Once you have the Ubuntu application, you also need a text editor or IDE. To install one inside Ubuntu, start the Ubuntu application. A Unix shell pops up. To install the Brackets text editor, enter sudo snap install brackets --classic. To run Brackets, enter brackets &. To install the Visual Studio Code IDE, enter sudo snap install --classic code. To run it, enter code &.

If you do not want to run Ubuntu as an application, then ignore the instructions above. Instead follow Mike's other instructions for installing Ubuntu on a thumb drive and booting from that. Or you could even partition your hard drive and install Ubuntu for real. You can read about that on the Web. Either way, you then proceed with the Ubuntu setup instructions below. But most Windows users should simply run Ubuntu as an application.

Ubuntu Linux

Follow Mike Tie's instructions, skipping over the Windows part. These instructions have been tested on Ubuntu, but they probably work on other Linux/BSD distributions with some modification. If you're a habitual Linux/BSD user, then you know what I mean better than I do ;).

If you're rushed for time, then feel free to delay the GL3W part of the instructions until the third or fourth week of the course. We don't need GL3W until approximately Day 14. But we need GLFW on Day 01, so be sure to install that part immediately.

You also need a text editor. Brackets is a popular one. To install it, open a shell and enter sudo snap install brackets --classic. To start Brackets, click on the grid of nine dots in the lower left corner of the screen, search for the string "Brackets", and click on the Brackets icon. Another popular editor/IDE is Visual Studio Code. It can be installed with sudo snap install --classic code.