Verify that all the ports in the bundle belong to the same VLAN or are all trunk ports.
Verify that the same trunk mode, encapsulation, and allowed VLAN list are on all ports in the bundle.
Verify that all ports in the bundle have the same speed and duplex settings.
Verify the port channel mode on both ends of the link. Only ports in desirable and auto mode negotiate a channel. Valid settings are desirable-auto or desirable-desirable. The auto-auto setting does not negotiate a channel.
Ports in on mode only form a functional channel with other ports in on mode. They do not negotiate a channel with ports in desirable or auto mode.
On certain Catalyst 5000 family modules (WS-X5201 and WS-X5203), you cannot form an EtherChannel with the last two ports in a port group unless the first two ports in the group already form an EtherChannel. For example, if you create separate EtherChannels with only two ports in a channel, you cannot assign ports 3-4 to a channel until you have first configured ports 1-2 to a channel (or 7-8 until first done for ports 5-6; 11-12 until done for ports 9-10). This is an exception and only for the Catalyst 5000 family.