In this study, the problem of determining the power allocation that maximises the energy efficiency of cognitive radio network is investigated as a constrained fractional programming problem. The energy-efficient fractional objective is defined in terms of bits per Joule per Hertz. The proposed constrained fractional programming problem is a non-linear non-convex optimisation problem. The authors first transform the energy-efficient maximisation problem into a parametric optimisation problem and then propose an iterative power allocation algorithm that guarantees ε-optimal solution. A proof of convergence is also given for the ε-optimal algorithm. The proposed ε-optimal algorithm provide a practical solution for power allocation in energy-efficient cognitive radio networks. In simulation results, the effect of different system parameters (interference threshold level, number of primary users and number of secondary users) on the performance of the proposed algorithms are investigated.