This paper studies the leader-following state consensus problem for heterogeneous linear multi-agent systems under fixed directed communication topologies. First, we propose a consensus protocol consisting of four parts for high-order multi-agent systems, in which different agents are allowed to have different gain matrices so as to increase the degree of design freedom. Then, we adopt a state linear transformation, which is constructed based on the incidence matrix of a directed spanning tree of the communication topology, to equivalently transform the state consensus problem into a partial variable stability problem. Meanwhile, the results of the partial variable stability theory are used to derive a sufficient and necessary consensus criterion, expressed as the Hurwitz stability of a real matrix. Then, this criterion is further expressed as a bilinear matrix inequality condition, and, based on this condition, an iterative algorithm is proposed to find the gain matrices of the protocol. Finally, numerical examples are provided to verify the effectiveness of the proposed protocol design method.