Preheat oven to 350 degrees F (175 degrees C). Grease a 9x13 inch baking pan. Set aside. In a large bowl, mix together sugar, oil, eggs, vanilla, and buttermilk. Stir in carrots, coconut, vanilla, and pineapple. In a separate bowl, combine flour, baking soda, cinnamon, and salt; gently stir into carrot mixture. Stir in chopped nuts. Spread batter into prepared pan. Bake for 55 minutes or until toothpick inserted into cake comes out clean. Remove from oven, and set aside to cool. In a medium mixing bowl, combine butter or margarine, cream cheese, vanilla, and confectioners sugar. Blend until creamy. Frost cake while still in the pan.