For the cake: Preheat the oven to 160°C. Mix together the granulated sugar, oil and eggs in a large bowl. In another bowl, sift together the flour, baking powder, baking soda, cinnamon and salt. Add the flour mixture to the sugar mixture and combine. Then add the carrots and mix well. Pour the batter into a greased and floured Bundt pan and bake until done, about 50 minutes. Leave to cool completely.
Meanwhile, for the icing: In a larger bowl, cream the butter and cream cheese together. Add the powdered sugar and vanilla and blend. Then mix in the pecans. Spread the icing on the cooled carrot cake.