O'Neil had been in interim charge of Bournemouth ever since Scott Parker was sacked at the end of August after Scott Parker was sacked four games into the new season.
O'Neil has taken charge of 12 matches so far, winning four, drawing four and losing four.
The Bournemouth hierarchy have now taken the decision to hand O'Neil an 18-month contract with the option of a further year.
Bournemouth are 14th on the Premier League table and will meet Chelsea when the top flight resumes after the World Cup break.
Bournemouth chief executive Neill Blake said: "Gary did an excellent job on an interim basis and the board are delighted to make his position as head coach permanent.
"We have been impressed with the way he has conducted himself from the moment he joined the club and feel he has earned this opportunity to continue to take the team and the club forward.
"Gary has worked tirelessly and diligently on the training pitch and the players have responded by producing some excellent performances and results.
"It was evident from the reception he received from our supporters following the Premier League win against Everton that they have also appreciated his efforts and we are all looking forward to continuing our working relationship with him."