Proposition Let $X$ be a topological space with the Bolzano Weiertrass property. Then every countable covering of $X$ admits a finite subcovering.
Proof Let $\{O_1,O_2,\ldots\}$ be the countable open cover of $X$, so that $X\subseteq\bigcup O_n$. Suppose to the contrary that no finite collection of the cover covers $X$. Then in particular $V_n=\bigcup_{k=1}^nO_k$ do not cover $X$ for each $n$. Thus, we can find for $n=1,2,\ldots$ a point $x_n\in X$ that is not in $V_n$, and such that $x_i\neq x_j$ if $i\neq j$. Indeed, we follow the construction inductively: let $x_1\in X$ that is not in $V_1$. Then there exists $x_2\in X$ that is not in $V_2$ and is different from $x_1$: if the only point of $X$ not in $V_2$ was $x_1$, we would be able to cover $X\setminus \{x_1\}$ with $V_2$ and $\{x_1\}$ with $V_1$. Suppose we have found $x_1,\ldots,x_k$ all distinct in $X$ with $x_i\notin V_i$. Then we can find $x_{i+1}\in X$ not in $V_{i+1}$; but additionally distinct of all other points, for if the only points of $X$ not in $V_{i+1}$ were among the finite set $\{x_1,\ldots,x_i\}$, we could cover $X\smallsetminus \{x_1,\ldots,x_i\}$ by $V_{i+1}$ and $\{x_1,\ldots,x_i\}$ by $V_1\cup \cdots\cup V_i$, contrary to our hypothesis. This means the subset obtained $\{x_1,\ldots,x_n,\ldots\}$ is infinite. This must have an accumulation point, $x\in X$. Hence $x\in O_m$ for some $m$, and $O_m$ contains infinitely many of the $x_n$. In particular, we can choose $k>m$ and $x_k\in O_p\subseteq V_p\subseteq V_k$ contradicting the construction of the $x_k$. It follows there must exist a countable subcover. $\blacktriangleleft$
Proposition Let $X$ be a topological space that is second countable, that is, there exists a countable base for the topology on $X$. Then $X$ is Lindelöf, that is, every open cover of $X$ admits a countable subcover.
Proof Let $\mathcal O=\{O_\alpha\}_{\alpha\in A}$ be an open cover. Let $\mathscr B=\{B_n\}_{n\geqslant 1}$ be a countable base. Recall this means every open set of $X$ is a union of basic open sets in $\mathscr B$. Now pick $x\in X$, and let $O$ be an open set containing $x$. Then $x\subseteq B_i\subseteq O$ for some $i$, for $\mathscr B$ is a basis. For each $x\in X$ and each $O_\alpha$ in $\mathcal O$; we can find $B_j$ such that $x\in B_j\subseteq O_{\alpha}$. The collection $J$ of such $j$ is countable, and we may now choose for each $j$ one index $\alpha(j)$ for which $B_j\subseteq O_{\alpha(j)}$. The collection $\{O_{\alpha(j)}\}$ is thus countable, and covers $X$; as we wanted. $\blacktriangleleft$
Proposition A metric space $X$ with the Bolzano Weierstrass property is second-countable.
Proof Let $k∈ℕ^*$. For each $n>0$, let $x_{k,n}$ be such that for all $m<n$, we have $d(x_{k,n},x_{k,m}) ≥ 1/k$ if it is possible (option A), and let it be arbitrary otherwise (option B). By the Bolzano Weierstrass property, $(x_{k,n})_n$ have an accumulation point, and so there is $n<m$ such that $d(x_{k,n},x_{k,m}) < \varepsilon$. This means that option B is taken at step $m = m_k$, so that each point in $X$ is at distance less than $1/k$ of $\{x_{k,i}\}_{i=0}^{m_k}$.
Now, let $U⊆X$ be open and let $x∈U$. Let $B(x,\varepsilon)$ be the open ball centered at $x$ and of radius $\varepsilon$. There exists $k∈ℕ^*$ such that $B(x,1/k) ⊆ U$. Let $n∈[\![0,m_{2k}]\!]$ be such that $d(x_{2k,n}, x) < 1/(2k)$. Then $B(x_{2k,n}, 1/(2k))$ is contained in $U$ and contains $x$. This means that $U$ is the union of all the $B(x_{k,n}, 1/k)$ contained in it, so we have a countable basis for the topology of $X$. $\blacktriangleleft$
Theorem Let $X$ be a second countable topological space. Then $X$ is compact if and only if it has the Bolzano Weietrass property. In particular, a metric space is compact if and only if it has the Bolzano Weiertrass property.
Proof This follows directly from the three propositions above. $\blacktriangleleft$