CS50 distributes its own spin on Fedora but I have Fedora 20 installed and don't want to waste precious download usage.
How can I install the CS50 appliance in my existing Fedora 20 environment?
CS50 Stack Exchange is a question and answer site for students of Harvard University's CS50. It only takes a minute to sign up.
Sign up to join this community"CS50 appliance" refers to the pre-configured, Fedora-based virtual machine distributed as part of the course materials. The only way to "install the appliance" is by loading the virtual machine in its entirety.
However, you can certainly install some of the individual components of the appliance without installing the entire virtual machine.
The most important tool for taking CS50 is the CS50 Library. There are detailed instructions for installing the CS50 Library in a variety of environments in the CS50 Manual. Here's how you would do it in Fedora:
First become
root
, as with:su -
Then install the CS50 Library as follows:
yum -y install gcc wget http://mirror.cs50.net/library50/c/library50-c-5.zip unzip library50-c-5.zip rm -f library50-c-5.zip cd library50-c-5 gcc -c -ggdb -std=c99 cs50.c -o cs50.o ar rcs libcs50.a cs50.o chmod 0644 cs50.h libcs50.a mkdir -p /usr/local/include chmod 0755 /usr/local/include mv -f cs50.h /usr/local/include mkdir -p /usr/local/lib chmod 0755 /usr/local/lib mv -f libcs50.a /usr/local/lib cd .. rm -rf library50-c-5
This is the bare minimum requirement for being able to complete most of the problem sets.
However, without additional tools from the appliance, you'll find it more difficult to do many basic things; for example, you wouldn't be able to run check50 without installing it manually from the github source (and installing nodejs, which can be done via yum
). You also wouldn't be able to use make
exactly as it's used in the problem set specifications without also installing clang
and configuring make
to use the default arguments described in pset3.
If you need more detailed instructions, much of the advice given in response to the question How to Install the Tools for the Course on Ubuntu is applicable to Fedora as well.