Ubuntu下在Eclipse IDE for C/C++ Developers中怎样执行C语言的GTK程序?(已解决)

已解决。详见Ubuntu 12.04下在Eclipse IDE for C/C++ Developers中执行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模版,这里仅仅是简化过程。







#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; 
}




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程序就能执行出来了。





原文链接: https://www.cnblogs.com/blfbuaa/p/7116038.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/256347

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月14日 上午9:58
下一篇 2023年2月14日 上午9:59

相关推荐