zoukankan      html  css  js  c++  java
  • 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程序就能执行出来了。


  • 相关阅读:
    Java基础之:构造方法(构造器)与this关键字
    Java基础之:属性与局部变量作用域
    Java基础之:方法重载与可变参数
    Java基础之:成员方法与传参机制
    Java基础之:类与对象
    Java基础之:数组练习题
    Java基础之:二维数组
    Promise对象的简单用法
    如何用vue-cli初始化一个vue项目
    get和post请求的区别
  • 原文地址:https://www.cnblogs.com/blfbuaa/p/7116038.html
Copyright © 2011-2022 走看看