We propose a cross-layer routing protocol for cognitive radio (CR) networks, where spectrum sensing, medium access control (MAC) and routing are done simultaneously at each node. First, we propose a sensing scheme using sequential Bayesian estimation where each sensor computes the posterior probability of channel availability for each frequency band. Then, we design a reward metric based on the posterior probability of channel availability and achievable channel capacity. Using this reward metric, the MAC layer selects the channel on which the link between two SUs is established. Finally, in the network layer, we adopt a Best-first-search routing algorithm which selects the node in the direction of the destination to forward the packet. The performance of the proposed scheme is evaluated by calculating the number of successful packet transmissions between a given source - destination pair and the number of collisions with the primary users.