The attack happened during the lunch hour Tuesday near an entrance to Kelvin High School in the neighbourhood of River Heights.
Const. Jason Michalyshen said Wednesday that a former student at the public school, Brett Bourne, was first involved in a minor disagreement with a 16-year-old student.
Michalyshen said the younger boy backed off and may have been walking back into the school, when another student intervened and stabbed Bourne.
The teen was later pronounced dead at hospital.
The three boys knew each other, Michalyshen said.
"It does appear that there have been some ongoing relationship issues and that does appear to be one of the main reasons why things escalated to the extent that they did."
He said he could not be more specific, but when asked if there had been a dispute over a girl, Michalyshen said it was "a possibility."
Police have arrested a 17-year-old boy and were expecting to lay homicide charges Wednesday.
Michalyshen said officers found the suspect standing around with other witnesses after the stabbing. Police knew he was someone they needed to talk to but hadn't yet determined if he was involved.
"We've said it before: witnesses can certainly turn into suspects."
Students said they saw teachers and other students attempting CPR on Bourne before emergency crews arrived. The teen's family has consented to the release of his name, Michalyshen added.
He called the boy's death tragic and said it's too bad a student felt the need to bring a knife to school.
"Schools and school divisions and many of our officers who are associated to schools throughout the city work really hard with staff and students to create a safe environment.
"Unfortunately, there are individuals in our community that are going to make some poor choices and ... we're dealing with the worst-case scenario."