I know that to determine the minimum distance of a code given its basis we can follow this procedure:
Let $\{ c_1, \ldots, c_k \}$ be a basis for a code of length $n$ and dimension $k$. Then the generator matrix is $B$ whose rows are $c_i$. I know that row ops on $B$ do not change the code so we can assume that $B = (P | I_k)$. Now the parity check matrix is given by $A = (P^\top | I_{n-k})$ and the minimum distance of the code is the minimum number of columns of $A$ that are linearly dependent.
The problem is that this approach can be very tedious for large codes as we have to reduce $B$ to echelon form, so my question are:
1) Is there in general an easier approach? Eg. looking at the weight of the codewords in the basis.
2) If $C$ is cyclic should I also follow the same approach?