Most likely your layout.master is missing this:
<asp:SiteMapDataSource ID="SiteMapData" runat="server" ShowStartingNode="false" />
note that the ID is important, if you have changed the ID it will not work.
Best to compare your layout.master to one that works.
Hope it helps,
Joe