I finished pset5 dictionary's implementation, seems working fine in the appliance but after running check50 on it, it shows following error:jharvard@ubuntu:~/Dropbox/pset5$ check50 2014.fall.pset5.speller dictionary.c dictionary.h Makefile :) dictionary.c, dictionary.h, Makefile exist :( speller compiles \ expected output, not standard error of "make: *** No rule to make target `hash...." :| handles most basic words properly \ can't check until a frown turns upside down :| handles min length (1-char) words \ can't check until a frown turns upside down :| handles max length (45-char) words \ can't check until a frown turns upside down :| spell-checking is case-insensitive \ can't check until a frown turns upside down :| handles possessives properly \ can't check until a frown turns upside down :| handles substrings properly \ can't check until a frown turns upside down https://sandbox.cs50.net/checks/01b4988cdaf84e0aad261e60cbc8cae9 please tell me, where I made mistake, speller doesn't compile and remaining warning messages.
It looks like it doesn't like something about your make file. Did you add a hash.c and hash.h file to your project? Does it compile ok on your system? If so (I assume it does), did you correctly modify the make file?
There's also another possibility that check50 may have a bug, but highly unlikely. I'm thinking that it isn't grabbing your make file and is trying to build your code with the original make file, so it doesn't know to get hash.h. But like I said, not likely.
Here's something you can try though. Merge the contents of hash.c into dictionary.c and hash.h into dictionary.h. At least it will tell you whether your code passes. If this works, then it says there's currently a problem either with the way you are compiling/making the executable, or with your make file, or with check50. That will take more investigation.
If this answers your question, please accept this answer to remove the question from the unanswered question pool. Let's keep up on forum housekeeping. ;-)