Плагин перестал работать в Linux после перехода на использование GeckoSDK 1.9.1
У меня есть плагин, который отлично работает, когда я связываю его с GeckoSDK 1.9.
Теперь я переключился на использование GeckoSDK 1.9.1.16, и он перестал обнаруживаться в Linux (в Windows он все еще работает нормально) - о: плагины больше не показывают его!
Других изменений не было, кроме переключения каталогов INCLUDE/LIB в make-файле и переименования nppupp.h -> npfunctions.h.
Я протестировал его с Firefox 3.5, 3.6 и 4.0 beta - тот же результат.
Есть идеи?
2 ответа
Хорошо, если кому-то будет интересно, я отвечу на свой вопрос.
Оказывается, они не просто переименовали npupp.h -> npfunctions.h, но как-то переставили заголовки.
В результате npfunctions.h был включен до того, как XP_UNIX был определен (в prcpucfg.h), что, в свою очередь, привело к тому, что функции npentry (NP_GetMIMEDescription и т. Д.) В моем коде были определены без предварительного объявления, следовательно, имели связь с C++, следовательно, браузер не мог найти это.
Привет Mozilla, что случилось с автономными заголовками?
Если это необработанный плагин NPAPI, я бы порекомендовал использовать проект npapi-headers, который предоставляет заголовки, которые должны работать во всех браузерах и на всех платформах. Заголовки npapi от gecko-sdk иногда доставляют мне проблемы. Я бы сказал, что по крайней мере стоит попробовать.