首页 > 代码库 > Ubuntu下在Eclipse IDE for C/C++ Developes中如何运行C语言的GTK程序?

Ubuntu下在Eclipse IDE for C/C++ Developes中如何运行C语言的GTK程序?

        按“Ubuntu下GTK的安装、编译和测试”(http://www.cnblogs.com/niocai/archive/2011/07/15/2107472.html)所说步骤,终于成功安装了GTK,很开心,以为近一个月的困扰要解决了,但在Eclipse IDE for C/C++ Developes中一测试,出现找不到gtk/gtk.h头文件的错误。哭! 

        又花了好些时间终于找到了Ubuntu下Eclipse的配置(http://blog.csdn.net/sunny2038/article/details/7082164),终于能在Eclipse IDE for C/C++ Developers中找到gtk/gtk.h头文件了,以为终于熬出头了,不料测试一下,居然出来成百上千的错误,主要是类似于以下的错误和警告(g.c是源文件名):

In file included from /usr/include/gtk-2.0/gtk/gtk.h:170, from ../g.c:1:
/usr/include/gtk-2.0/gtk/gtkspinner.h:58: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘gtk_spinner_get_type’
In file included from /usr/include/gtk-2.0/gtk/gtk.h:171,from ../g.c:1:
/usr/include/gtk-2.0/gtk/gtkstatusbar.h:63: warning: parameter names (without types) in function declaration
/usr/include/gtk-2.0/gtk/gtkstatusbar.h:63: error: field ‘GSEAL’ declared as a function
/usr/include/gtk-2.0/gtk/gtkstatusbar.h:65: warning: parameter names (without types) in function declaration
/usr/include/gtk-2.0/gtk/gtkstatusbar.h:65: error: bit-field ‘GSEAL’ has invalid type
/usr/include/gtk-2.0/gtk/gtkstatusbar.h:55: error: duplicate member ‘GSEAL’…

      好些头文件都有类似错误,百度无果,又没招了,该如何是好?恳求大牛帮忙……焦急等待中!!!


---------------以下转载自:Windows和Ubuntu11.10在Eclipse中配置C和GTK--------------------------------------------------
Ubuntu下在Eclipse中运行C语言的GTK程序
1、下载相关的包
        sudo apt-get install gnome-core-devel build-essential libgtk2.0-dev libgtk2.0-doc
2、测试代码
        打开Eclipse,新建——C Project——输入Project name,并选择Executable中的Hello World ANSI C Project,默认会选择Linux GCC的Toolchains,点击Finish——这时会打开一个Hello World的示例代码——将其中哦功能的代码换成下面的测试代码。(其实完全可以不用Hello World模版,这里只是简化过程。)


<span style="font-size:14px;">#include <gtk/gtk.h> 
int main( int argc, char *argv[] )
{ 
        GtkWidget *window;
        gtk_init (&argc, &argv);
        window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
        gtk_widget_show (window);
        gtk_main ();
        return 0; 
}</span>


3、配置Eclipse       
        (1)选中gtk项目,在菜单栏点击Project——Properties——C/C++ Build——Settings——GCC C Compiler——Miscellaneous,在Other flags中加入`pkg-config –cflags gtk+-2.0`
        (2)在同一个对话框中,选择GCC C Linker——Miscellaneous,在Linker flags中加入`pkg-config –libs gtk+-2.0`
        (3)选中GCC C Linker,在右边的Command line pattern里面的${INPUTS} 调到${COMMAND}后面,如:${COMMAND}  ${INPUTS} ${FLAGS} ${OUTPUT_FLAG}${OUTPUT_PREFIX}${OUTPUT}
        (4)在GCC C Compiler——Includes中,加入/usr/include/gtk-2.0 和 /usr/include/glib-2.0,可以消除gtk.h unresolved的警告,同时在程序中使用gtk的函数,会出现智能提示。
        经过以上步骤,一个GTK程序就能运行出来了。


Ubuntu下在Eclipse IDE for C/C++ Developes中如何运行C语言的GTK程序?