Given a $k \times n$ matrix $G$ over a finite field, you can use this to define two codes :
linear code $C_L$ : closure of rows of $G$ under addition and multiplication by field scalars
additive code $C_A$ : closure under addition only.
For binary codes, the two coincide so $C_A=C_L$. For other fields they could be different. I can calculate the minimum distance $d(C_L)$ using GAP + GUAVA, but I need $d(C_A)$. It doesn't look like additive codes are supported by GUAVA so I'm hoping there's a way to manipulate things to get $d(C_A)$...alternatively I'm open to using other packages if they can handle this case. The field I'm interested in is $GF(4)$.
Supplementing Dilip's fine answer with the following variant that resolves the problem that the natural mapping $GF(2^m)\to GF(2)^m$ will necessarily distort the Hamming weights somewhat in that a non-zero element of $GF(2^m)$ can have any number between $1$ and $m$ non-zero coordinates. The trick I describe is specific to $GF(4)$. Something similar can be cooked for other extension fields, but they are more complicated.
The idea is that instead of using coordinates with respect to a chosen basis, we replace elements of $GF(4)$ with words of a short binary linear code with the property that its non-zero words all have the same weight. There is a 2-dimensional such code of length three, namely the even weight subcode of $GF(2)^3$. Using it we map the elements of $GF(4)=\{0,1,a,a^2=a+1\}$ as follows: $$ \begin{aligned} 0&\mapsto 000,\\ 1&\mapsto 110,\\ a&\mapsto 101,\\ a^2&\mapsto 011. \end{aligned} $$ Call this mapping $\phi$. Because $a^2=a+1$ and modulo two $110+101=011$, we see that $\phi$ is a homomorphism of additive groups. It naturally extends to an additive homomorphism from $\phi:GF(4)^n\to GF(2)^{3n}$. Therefore the image of an additive code will be additive, i.e. binary linear. Furthermore, for any codeword $x\in GF(4)^n$ we see that the binary (resp- 4-ary) Hamming weights of $x$ and its image $\phi(x)\in GF(2)^{3n}$ satisfy the relation $$ w_{2}(\phi(x))=2\cdot w_{4}(x).\tag{1} $$
For example the word $(1,a,a^2,1,a,a^2)\in GF(4)^6$ of weight six gets replaced with the bit string $110\,101\,011\,110\,101\,011$ of weight twelve.
It stands to reason that GAP/GUAVA can easily calculate the weight enumerator of the image of any additive code over $GF(4)$. Equation $(1)$ then tells us that we get the 4-ary weight enumerator of the original code simply by halving all the weights.
The key is that if an additive code $C\subset GF(4)^n$ is generated by words $x_1,x_2,\ldots,x_k$, then the binary words $\phi(x_j), j=1,2,\ldots,k$, generate $\phi(C)$ as a binary linear code. So for the purposes of implementing this idea it probably suffices to implement $\phi$ on the vectors over $GF(4)$.
A few caveats that occured to me: