cheungmine
2012-9
关键词:Linux, Plugin, Firefox
参考文章地址:
http://www.firebreath.org/display/documentation/Building+on+Linux
本文试图用最清晰的步骤说明如何在Linux(Ubuntu Desktop)上安装FireBreath开发环境,并通过一个完整的
示例插件项目hello,来说明如何开发Linux上的浏览器插件。
$ sudo apt-get install cmake libgtk2.0-dev git
git clone https://github.com/firebreath/FireBreath.git
$ cd ./FireBreath
当前目录为~/NVPACK/firebreath
$ mkdir ./projects
$ ./prepmake.sh ./examples
$ python ./fbgen.py
在需要输入名称的地方输入:hello
这样一个hello plugin的源代码就生成了。接下来生成项目build文件。
$ ./prepmake.sh ./projects/hello
$ cd ./projects/hello
$ make
插件文件nphello.so生成了,在:
../firebreath/build/bin/hello/nphello.so
把这个文件复制到Firefox插件路径下:
/usr/lib/mozilla/plugins/
$ sudo cp ~/NVPACK/firebreath/build/bin/hello/nphello.so /usr/lib/mozilla/plugins/
然后用firefox浏览器打开下面的测试文件:
~/NVPACK/firebreath/build/projects/hello/gen/FBControl.htm
看到:
-----------------------
Plugin loaded!
-----------------------
[OK]
最近遇到一个问题,我在Linux上编写绘图插件,在包含#include "X11/PluginWindowX11.h"之后,系统提示:
In file included from /home/cl/workspace/firebreath-git/firebreath-dev/projects/canvasplugin/canvasplugin.cpp:27:0: /home/cl/workspace/firebreath-git/firebreath-dev/src/PluginAuto/X11/PluginWindowX11.h:22:21: fatal error: gtk/gtk.h: No such file or directory compilation terminated.
# solve make error: # src/PluginAuto/X11/PluginWindowX11.h:22:21: # fatal error: gtk/gtk.h: No such file or directory include_directories(${GTK_INCLUDE_DIRS})
一切大功告成。