Образование сложных слов, первой частью которых являются количественные числительные, согласно правилам русского языка, происходит без соединительной гласной. (Правда, есть исключения из этого правила, но сейчас речь не идет об этих исключениях).
Числительное при этом обычно употребляется в форме родительного падежа.
И существительное сорокАлетие именно так образовано: сорок => сорокА + летие => сорокалетие.
Но мы знаем, что есть сложные слова, в состав которых входит числительное сорок, но тем не менее они образованы при помощи соединительной гласной о, например, сорокОножка, сорокОуст, сорокОпут.
Почему же эти слова пишутся именно так?
Дело в том, что числительное "сорок" здесь употреблено не в прямом значении СЧЕТА, как в слове сорокалетие, где сорок точно соответствует своему значению количества лет -- 40 лет, не больше и не меньше.