i'm new to programming and just started taking cs50.... I'd like to proceed to pset1 but i can't use the docker toolbox(i use windows 7) since my processor does not support hardware virtualisation. Is there an alternative way of using the cs50 ide offline? And how do i go about it?
3 Answers
As far as I know, there's only 2 things needed to compile programs that use the code examples from the CS50 course.
The cs50.h header file, and the cs50 library (linked when -lcs50 is passed to the compiler).
If you have those, I expect that you'd be able to build your programs using MinGW, which you can download for free.
You wouldn't be using the CS50 IDE, but you'd be building programs on Windows using the gcc compiler ported to Windows (MinGW).
You wouldn't be able to run the check50 program though, which I think is very important. It will find many small and major bugs in your programs before you submit your projects for grading.
It would be easy to get ahold of cs50.h (someone with access to the CS50 IDE could download it and send it to you), but I'm not sure how to get the cs50 library. I looked around the file system but wasn't able to find it.
So basically, somehow you'd have to contact someone from CS50 in order to get the library, and if you did that, you'd be able to find out if you could also download the check50 and ask how, or if, it could be run on Windows.
Bottom line is, I believe it's possible, but it's likely you'd have to contact someone from CS50 to find out about some of the details I've mentioned.
Edit/Update: Using the link Daniel P provided in another answer, I downloaded cs50.c and cs50.h. I was able to build a program on my computer that uses functions from the cs50 library using this command:
gcc -Wall vigenere.c cs50.c -I../../cs50/include -o vigenere
The directory after '-I' is where any extra include files are. In this case, cs50.h. For the purpose of trying this, I had cs50.c in the same directory as vigenere, a source file from pset2.
UPDATE:
Jessica, if you have trouble running check50
as well, one option may be to ask a friend or fellow student to log in and do the check for you, and then copy and paste the results back to you.
-
1Best answer so far, looks like you are on track to get the bounty! I still wonder whether there is any way to install
check50
and the CS50 Staff implementations for offline use. Seems like you'd need to recompile them from source, since the precompiled binaries will be compiled for the wrong architecture. (And obviously you can't get the source for the CS50 Staff implementations, since that would violate the Academic Honesty policy!) Commented Oct 5, 2016 at 22:49 -
Yes, it would be great if there was a way to do all this, plus run check50. It would make it much more accessible to people whose hardware doesn't meet the req's. I edited the answer to add one option of using check50. I was going to mention the "Share" option the IDE has, but have never used it. Could she share her workspace with a friend, so the friend can run check50 for her?– Andy AltCommented Oct 8, 2016 at 22:22
You can do all the psets locally and just use the cs50 IDE online to verify your code with check50.
To download the cs50 library go here https://manual.cs50.net/library/
-
Thanks for this crucial piece of info! I don't think there is any way to split the bounty, but if there is I'll give you half! Commented Oct 5, 2016 at 22:50
Short of using a different computer, there might not be anything you can do. See this superuser thread. (If working offline is not a requirement, you can do most of the CS50 coursework in the CS50 IDE.) Nonetheless, I've opened a bounty on the question in order to see whether I can get someone to come up with a better answer.