linux — переход в другую библиотеку (особенно в C ++)

В некоторых случаях, когда библиотеки становятся устаревшими в Linux; Разработчики предлагают перейти на другую библиотеку. Я хочу знать, каковы шаги для перехода?

Например, мое программное обеспечение, как и многие другие потребности libipq.h который устарел. И разработчик сказал libipq пользователи переходят на nfnetlink_queue Как я могу заставить свое программное обеспечение работать, как могли бы другие пользователи этой библиотеки?

-1

Решение

  1. добавьте обе библиотеки в свой проект.
  2. постепенно преобразовывайте одну функцию за другой, чтобы использовать новую библиотеку вместо старой. Тщательно протестируйте каждую перенесенную функцию.
  3. когда вы перенесли все функции в новую библиотеку, удалите старую.
3

Другие решения

Подобные библиотеки

Если библиотеки достаточно похожи, определите устаревшие функции в терминах функций новой библиотеки. Затем просто замените их в коде. Убедившись, что преобразование завершено, вы можете поработать над оптимизацией, удалив ненужные помехи и удалив упаковщики.

Разные библиотеки

Если библиотеки слишком разные (с точки зрения функциональности или производительности), возможно, стоит подумать о переделке части работы. В таких случаях вы можете захотеть дать частям программы совершенно новую структуру, чтобы она соответствовала новой библиотеке, или, в общем, мыслите по-другому. Предыдущая методика в этом случае привела бы к катастрофе кода, спроектированного одним способом и вынужденного вести себя как другой.

0

По вопросам рекламы [email protected]