This is basically a comment, but I don't want it to get lost in the conversation about defining the question: The Godemont resolution of a sheaf (of abelian groups, on any topological space) can be defined without making any choices. If you define sheaf cohomology groups as the cohomology of the Godemont resolution, I would guess that you can prove whatever you consider to be the primary results about them without use of choice.

In response to the comment below: Interesting, you are right! The construction literally makes sense without choice, but it doesn't give a long exact sequence. Indeed, if $X$ is a discrete space and $\mathcal{E}$ a sheaf on $X$, then $Gode(\mathcal{E}) \cong \mathcal{E}$, so the Godemont resolution stops in one step and all higher cohomology vanishes. However, as Blass shows, in the absence of choice, if we want long exact sequences, we must define $H^1(X, \mathcal{G})$ to be nonzero for discrete $X$ in some cases.

The fundamental issue is that, without choice, we can have a collection of exact sequences $0 \to A_i \to B_i \to C_i \to 0$, indexed by $i \in I$, so that $0 \to \prod A_i \to \prod B_i \to \prod C_i \to 0$ is not exact. Interesting!

$\def\cA{\mathcal{A}}\def\cB{\mathcal{B}}\def\cC{\mathcal{C}}$
As discussed in comments below, let $X$ be quasi-compact, let $\cA$ be a flasque sheaf on $X$ and let $0 \to \cA \overset{\alpha}{\longrightarrow} \cB \overset{\beta}{\longrightarrow} \cC \to 0$ be exact. Then I think that $0 \to \cA(X) \to \cB(X) \to \cC(X) \to 0$ is exact.

I am assuming that we can prove that sheaves form an abelian category in the first place, and that surjectivity means surjectivity on stalks. I am also only checking surjectivity of $\cB(X) \to \cC(X)$, since that is the hard case in the presence of choice.

Let $c \in \cC(X)$.

Let $\mathcal{U}$ be the set of open sets $U$ in $X$ so that there exists $b \in \cB(U)$ with $\beta(b) = c|_U$. By one possible definition of surjectivity, $\bigcup_{U \in \mathcal{U}} U = X$. By quasi-compactness, there is some finite list of sets $U_1$, $U_2$, ..., $U_n$ in $\mathcal{U}$ with $\bigcup U_i = X$. I'll use the stadnard shorthand $U_{ij} = U_i \cap U_j$, etc.

Choose (finitely many choices) elements $b_i$ in $\cB(U_i)$ with $\beta(b_i) = c|_{U_i}$. Define $a_{ij} = b_i|_{U_{ij}} - b_j|_{U_{ij}}$; note that $\beta(a_{ij})=0$ so $a_{ij} \in \cA(U_{ij})$. Observe also that we have the Cech cocycle condition
$$a_{ij}|_{U_{ijk}} + a_{jk}|_{U_{ijk}} + a_{ki}|_{U_{ijk}} = 0 \quad (\dagger)$$
and $a_{ij} = - a_{ji}$.

**Lemma** Given $a_{ij}$ obeying $(\dagger)$ and $a_{ij} = - a_{ji}$, we can find $a_i \in \cA(U_i)$ with
$$a_i|_{U_{ij}} - a_j|_{U_{ij}} = a_{ij} \quad (\ast)$$

This is the proof I came up with when I did this assignment, but I couldn't find a source that does it this way so I'm writing it up.

**Proof** We show by induction on $m$ that we can construct $a_1$, $a_2$, ..., $a_m$ so that $(\ast)$ holds whenever $1 \leq i < j \leq m$. The base case, $m=1$, is vacuously true and the case $m=n$ is the desired claim.

Suppose that $a_1$, ..., $a_{m-1}$ have been constructed. For $i < m$, set $a'_i = a_i|_{U_{im}}- a_{im}$. Then
$$a'_i|_{U_{ijm}} - a'_j|_{U_{ijm}} = a_i|_{U_{ijm}} - a_{im}|_{U_{ijm}} - a_j|_{U_{ijm}} + a_{jm}|_{U_{ijm}} =$$
$$ (a_i|_{U_i} - a_j|_{U_j})|_{U_{ijm}} - a_{im}|_{U_{ijm}} + a_{jm}|_{U_{ijm}} =a_{ij}|_{U_{ijm}} - a_{im}|_{U_{ijm}} + a_{jm}|_{U_{ijm}} =0$$
where the last two equalitites are the inductive hypothesis and $(\dagger)$.

So, by the sheaf condition, there is an element $a'$ in $\cA \left( \bigcup_{i < m} U_{im} \right)$ defined by $a'|_{U_{im}} = a'_i$. By flasqueness, we can choose (just one choice!) $a_m \in \cA(U_m)$ which restricts to $a'$ on $\bigcup_{i < m} U_{im}$. We then compute
$$a_i - a_m|_{U_{im}} = a_i|_{U_{im}} - a'|_{U_{im}} = a_i|_{U_{im}} - a'_i$$
$$=a_i|_{U_{im}} - \left( a_i|_{U_{im}} - a_{im} \right) = a_{im}. \quad \square$$

Now, note that
$$\left( b_i - \alpha(a_i) \right)|_{U_{ij}} - \left( b_j - \alpha(a_j) \right)|_{U_{ij}} =
b_i|_{U_{ij}} - b_j|_{U_{ij}} - \alpha(a_{ij}) = 0.$$
So (by the sheaf condition) there is $b \in \cB$ so that $b|_{U_i} = b_i$. Then $\beta(b)|_{U_i} = c|_{U_i}$, and we conclude (sheaf condition one more time!) that $\beta(b) = c$. $\square$

specifically about cohomology, which is again why you need to specify what exactly you want to do. $\endgroup$Again, what do you mean by "the usual cohomology theory on schemes?" Do you have specific results in mind? "Cohomology theory" is very big! Certainlysomeresults will require choice, andsomeresults won't; what exactly are you asking about? $\endgroup$what results specifically do you want to remain true?In particular, your comment on David Speyer's answer (". . . affirmative or not . . .") implies that you're looking for a yes/no answer; but for such an answer to exist, you have to actually ask a yes/no question! $\endgroup$9more comments