This paper presents a new algorithm for the design of linear controllers with special constraints imposed on the control gain matrix. This so called SLC (Structured Linear Control) problem can be formulated with linear matrix inequalities (LMIs) with a nonconvex equality constraint. This class of prolems includes fixed order output feedback control, multi-objective controller design, decentralized controller design, joint plant and controller design, and other interesting control problems. Our approach includes two main contributions. One is that many design specifications such as H performance, generalized H2 performance including H2 performance, l performance, and upper covariance bounding controllers are described by a similar matrix inequality. A new matrix variable is introduced to give more freedom to design the controller. Indeed this new variable helps to find the optimal fixed-order output feedback controller. The second contribution uses a linearization algorithm to search for a solution to the nonconvex SLC problems. This has the effect of adding a certain potential function to the nonconvex constraints to make them convex. Although the constraints are added to make functions convex, those modified matrix inequalities will not bring significant conservatism because they will ultimately go to zero, guaranteeing the feasibility of the original nonconvex problem. Numerical examples demonstrate the performance of the proposed algorithms and provide a comparison with some of the existing methods.