We introduce a consistent and efficient method to construct self-dual codes over $GF(q)$ with symmetric generator matrices from a self-dual code over $GF(q)$ of smaller length where $q equiv 1 pmod 4$. Using this method, we improve the best-known minimum weights of self-dual codes, which have not significantly improved for almost two decades. We focus on a class of self-dual codes, including double circulant codes. Using our method, called a `symmetric building-up construction, we obtain many new self-dual codes over $GF(13)$ and $GF(17)$ and improve the bounds of best-known minimum weights of self-dual codes of lengths up to 40. Besides, we compute the minimum weights of quadratic residue codes that were not known before. These are: a [20,10,10] QR self-dual code over $GF(23)$, two [24,12,12] QR self-dual codes over $GF(29)$ and $GF(41)$, and a [32,12,14] QR self-dual codes over $GF(19)$. They have the highest minimum weights so far.