Although $\ce{CO_2}$ has four lone pairs on the two oxygen atoms, but it still does not form addition compounds by donating lone pairs. Why?
$\ce{CO}$ on the other hand, does form addition compounds by donating the lone pair from C atom.
A fairly simplistic argument is that in CO, the lone pair on oxygen is of a much lower energy than the lone pair on carbon (because oxygen has a greater effective nuclear charge and therefore pulls electrons closer to itself). Therefore it is quite rare (very rare indeed) to find any compound that has the oxygen acting as a donor atom; CO only really reacts via its lone pair on C.
Carbon dioxide only has low-energy lone pairs on O, and is consequently a lousy Lewis base.
One could easily refine this by bringing in MO schemes, but at 3 a.m. in the morning, this is good enough to convince me.