我们使用的是gtkmozembed它由xulrunner提供,这两个东西到底是什么意思,我也不知道。
用的系统是ubuntu 10.04
sudoapt-get install xulrunner-1.9.2-dev
这一行就够了libxul-dev就默认下载了(应该是,因为在/usr/lib/pkgconfig/下有对应的文件)
还运行过一条,不知道有没有这个必要
sudo apt-get install xulrunner
添加头文件
#include</usr/include/xulrunner-1.9.2.24/gtkmozembed.h>
链接的时候,添加两个链接选项
QWQ_LIB+= `pkg-config --libs libxul`
QWQ_LIB+= `pkg-config --libs mozilla-js`
运行的时候,会提示找不到库文件:
cd/usr/lib/xulrunner-1.9.2.24
sudocp libxul.so /usr/lib/
sudocp libmozjs.so /usr/lib/
sudocp libxpcom.so /usr/lib/
把这三个库文件拷贝过去就可以了
源文件
#include <gtk/gtk.h>
#include</usr/include/xulrunner-1.9.2.24/gtkmozembed.h>
int main(int argc, char *argv[])
{
gtk_init(&argc,&argv);
GtkWidget *window =gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size(GTK_WINDOW(window),640, 480);
g_signal_connect(GTK_OBJECT(window),"destroy",G_CALLBACK(gtk_main_quit), NULL);
gtk_moz_embed_set_profile_path("/home/qwq/zhihui","mybrowser");
gtk_moz_embed_set_path("/usr/lib/xulrunner-1.9.2.24");
GtkWidget *html =gtk_moz_embed_new();
gtk_container_add(GTK_CONTAINER(window),html);
gtk_moz_embed_load_url(GTK_MOZ_EMBED(html),"http://www.126.com/");
gtk_widget_show_all(window);
gtk_main();
return 0;
}
makefile
gtkweb:gtkweb.o
gcc -Wall gtkweb.o -o gtkweb`pkg-config --libs gtk+-2.0 libxul mozilla-js`
gtkweb.o:
gcc -Wall -c gtkweb.c -ogtkweb.o `pkg-config --cflags gtk+-2.0`
c:
rm gtkweb gtkweb.o
r:
./gtkweb