On the group homology

Let $G$ be a group satisfying $H_1(G;\mathbb{Z})$ is free abelian group and $H_i(G;\mathbb{Z})=0$ for $i\geq 2$.

Is it true that $G$ is free group?

-

Perfect, locally free groups exist. Such a thing has vanishing $H_1(G,\mathbb Z)$, has $H_p(G,M)=0$ for all $p\geq2$ and all $M$, and is not free.
A. J. Berrick constructs an explicit example here. If you prefer an example where $H_1(G,\mathbb Z)$ is free and non-zero, just consider the free product of a perfect, locally free group with a non-trivial free group.