This is a cross-post to the question I asked at MSE over almost a month ago.

Suppose $n, l, m \in \mathbb N$ and $n \ge l > m$. Let $T: \mathbb C \to \mathcal M(n \times l; \mathbb C)$ be continuous and $T(\lambda)$ has constant rank $m$ for every $\lambda \in \mathbb C$. Suppose for every $\lambda \in \mathbb C$, there is an open neighborhood $U(\lambda)$ of $\lambda$ and a locally defined continuous function $h_{\lambda}: U(\lambda) \to \mathcal M(n \times m; \mathbb C)$ where the image $h_{\lambda}(\beta)$ is a basis for $T(\beta)$ for every point $\beta \in U(\lambda)$. Could we construct a globally continuous function $\phi: \mathbb C \to \mathcal M(n \times m; \mathbb C)$ by gluing together these locally defined $h_{\lambda}$'s, such that the image $\phi(x)$, of every point $x \in \mathbb C$, is a basis for $T(x)$?

What I have in mind: Suppose we have two continuous families of $g_1: \mathbb C \supseteq U_1 \to \mathcal M(n \times m; \mathbb C)$ and $g_2 : \mathbb C \supseteq U_2 \to \mathcal M(n \times m; \mathbb C)$ where $U_1$ and $U_2$ are two open disks in $\mathbb C$ with $U_1 \cap U_2 \neq \emptyset$. Then $(g_1^1(x), \dots, g_1^m(x))$ is a basis for $T(x)$ for all $x \in U_1$ and $(g_2^1(y), \dots, g_2^m(y))$ is a basis for $T(y)$ for all $y \in U_2$ where $g_i^j: x \mapsto \mathbf c_j( g_i(x))$ where $\mathbf c_j(\cdot)$ denotes the operation of taking the $j^{th}$ column of a matrix. Now for every $y \in U_2 \cap U_1$, ${g}_1 (y) = g_2(y) S(y)$ for some $S(y) \in GL_m(\mathbb C)$. It follows $S(y) = (g_2^T(y) g_2(y))^{-1} g_2^T(y) g_1(y)$. By Cramer's rule, $S(y)$ is continuous with respect to $y$. That is we have a well defined continuous function on $U_1 \cap U_2$, $S \colon U_1 \cap U_2 \to GL_m(\mathbb C)$. Since $U_1 \cap U_2$ is simply connected, there is a continuous retract $r :\mathbb C \to U_1 \cap U_2$. It follows $S \circ r : \mathbb C \to GL_m(\mathbb C)$ is well defined and continuous with $S \circ r|_{U_1 \cap U_2} = S$. So we can define $g$ by \begin{align*} g(x) = \begin{cases} g_1(x), & \text{ if } x \in U_1 \setminus U_2 \\ g_2(x)(S\circ r)(x) , & \text{ if } x \in U_2. \end{cases} \end{align*} This function is clearly continuous by construction and satisfies the prescribed condition.

I am not sure whether above argument is completely correct. Even if it was correct, my problem to proceed is: after we glue some collection of maps, the domain $U$ would become not so "regular". I am not sure the intersection of $U$ and an open disk would still be simple connected.