Does Hom commute with stalks for locally free sheaves? This is somewhat related to the question Why doesn't Hom commute with taking stalks?.
My question is this: If $F$ and $G$ are locally free sheaves of $\mathcal{O}_X$ -modules on an arbitrary ringed space $(X,\mathcal{O}_X)$, then is the stalk of the Hom sheaf $\mathcal{H}om(F,G)$ at a point $p$ equal to $\text{Hom}_{\mathcal{O}_{X,p}}(F_p,G_p)$?
I ask this because I feel I need it to solve Exercise 5.1(a) from Chapter II in Hartshorne. By proposition 6.8 of Chapter III, the answer to my question is affirmative IF $X$ is a Noetherian scheme, and it holds even if $F$ is only coherent and with no conditions on $G$, but his does not answer my question which is assuming less on $X$ and more on the sheaves. 
In any case, is there a way to solve the exercise in Hartshorne without going to the stalks?
 A: As $F$ and $G$ are locally free, and as the stalk at $p$ depends only of what happens in an open neighborhood of $p$, you can assume that $F$ and $G$ are in fact free. 
In the context of that exercise, the sheaves are actually of finite rank, so we end up with $F$ and $G$ free of finite rank. Since everything in sight is an additive functor, additivity allows us to reduce to the case where $F$ and $G$ are in fact free of rank $1$. Everything is then obvious :)
A: Presumably the solution you have in mind is this. There is a natural homomorphism $\newcommand{\E}{\mathcal{E}}\newcommand{\O}{\mathcal{O}}\newcommand{\Hom}{\mathcal{H}om}
\E\to(\E^\vee)^\vee$. It suffices to check that this homomorphism is an isomorphism at every stalk.
That's the right approach, but there's no need to go all the way to stalks. It suffices to show that on any open set $U\subseteq X$ where $\E$ is actually free, the natural map is an isomorphism. Since $\E|_U\cong \O_U^n$, it suffices to check that the natural map $\O^n\to \Hom(\Hom(\O^n,\O),\O)$ is an isomorphism. This is easy to check, but requires you to unravel the map.
Remark: Note that to show two sheaves on $X$ are isomorphic, it is not enough to find an open cover $X$ and isomorphisms between the two sheaves on each open set. The reason is that the isomorphisms may not agree the intersections of the open sets in the cover. Naturality of the map plays a very important role here: it ensures that the isomorphisms on the open cover will glue. To put it another way, we first constructed the morphism $\E\to (\E^\vee)^\vee$, and then checked that it is an isomorphism on an open cover. I want to stress that it is not enough to just check that $\O^n$ and $\Hom(\Hom(\O^n,\O),\O)$ are isomorphic, you must check that the specific map $s\mapsto (\phi\mapsto \phi(s))$ is an isomorphism.
This same remark holds if you want to use the stalks approach. You must first construct the global map, and then verify that it induces isomorphisms on stalks. Just showing that the stalks are isomorphic is not enough. If it were, any two locally free sheaves of the same rank would be isomorphic.
