King Charles III hailed Canada as a “strong and free” nation in a major speech at the opening of parliament in Ottawa amid annexation threats from US President Donald Trump.