Ian Rapoport of NFL Network reported the deal was worth $30 million on Monday.
Jackson, 29, spent the last three seasons with the Jacksonville Jaguars before his release earlier this month. The Jaguars saved $11 million on their cap by releasing the veteran defensive lineman, who signed a six-year, $85.5 million contract with the team in 2016.
Jackson did not miss a game in three seasons with the Jaguars but was held out of the starting lineup six times in 2018. The Eagles will hope to get a bounce-back season from the 2017 Pro Bowler, who set a career high in sacks with 8.5 that season.
"I'm having a hard season, but for me I was just realizing who I am and what I want to continue to show," Jackson said in December, per Jon Reid of the Florida Times-Union. "I have never lost confidence in myself and I never will. I can sit here and complain about what's going on. I've been trying to be very positive. You know there are some plays that I have messed up on, but I'm still a helluva player. I'm still one of the best three-technique players in the league. I'm just having a little hiccup. I'd rather have a hiccup than have an injured year."
Philadelphia recently traded Michael Bennett to the New England Patriots and declined a 2019 option on Timmy Jurnigan, necessitating a move in free agency. Bennett and Jurnigan were each scheduled to make eight figures next season, so the Eagles will be saving money and getting arguably a better player.
Odds are the Eagles will add at least one more impact defensive lineman, either via free agency or in April's draft. Philadelphia has three picks in the first two rounds.