Preheat oven to 160C (320F) grease and line with baking paper, a square 20cm (8 inch) cake tin.
In a medium bowl, whisk together the flour, bicarbonate soda, salt and cinnamon. Set aside.
In a larger bowl whisk eggs, caster sugar and vanilla. Add the oil a little at a time until well combined. Stir the flour mixture into the egg mixture with a spoon or spatula and then gently fold in the carrot, walnuts, sultanas and pineapple.
Pour into the prepared tin and bake for 1 hour. Test by inserting a skewer into the centre of the cake, if it comes out clean, the cake is ready. It may take 1 hour and 15 minutes, as ovens can differ.
Transfer the cake to a cooling rack for 10 minutes, then invert onto the rack until cake is cold.
For the Frosting:
Using an electric mixer, on medium setting, beat the cream cheese, sugar, vanilla and butter until very smooth and creamy. This may take around 5 minutes.
Spread frosting over cooled cake. Sprinkle with some grated lemon zest, if desired