火狐浏览器在linux下编译,linux下火狐浏览器插件开发.doc
linux下火狐浏览器插件开发
火狐浏览器插件开发
参考/tmy13/item/14ab45971e76511e924f41ba
下载sdk:/en-US/docs/Gecko_SDK
xulrunner-7.en-US.linux-i686.sdk.tar.bz2
解压到/home/chjan/下命名为xulrunner-sdk
下载np_entry.cpp,npn_gate.cpp,npp_gate.cpp,plugin.cpp,plugin.h,resource.h文件
/seamonkey/source/modules/plugin/samples/npruntime/
将其放入同一目录下/home/chjan/FireFox/
进入/home/chjan/FireFox/目录下执行:
g++ -I /home/chjan/xulrunner-sdk/include -I /home/chjan/xulrunner-sdk/include/java -I /home/chjan/xulrunner-sdk/include/nspr -I /home/chjan/xulrunner-sdk/include/plugin -shared -o libnprt.so np_entry.cpp npp_gate.cpp npn_gate.cpp plugin.cpp
生成libnprt.so文件
在eclipse开发工具中编译:新建名为plugin的C++工程
将np_entry.cpp,npn_gate.cpp,npp_gate.cpp,plugin.cpp,plugin.h,resource.h文件拷到plugin工程下
执行sudo cp libnprt.so /usr/lib/mozilla/plugins将libnprt.so拷贝到/usr/lib/mozilla/plugins目录下
打开火狐浏览器输入about:plugins查看是否有libnprt.so
在plugin.cpp中添加自己的方法:
如果为带参的方法如果为带参的方法.html:
运行结果:
type="application/mozilla-npruntime-scriptable-plugin"在npp_gate.cpp中定义
在此处可以修改为你自己定义的MIMEtype