H's profile什么PhotosBlogLists Tools Help

Blog


    7/3/2006

    出来露个面

          好久没来过这里了,因为没什么可写的,又怕打开太慢。
          最近终于把考试搞定了。总是觉得这学期过得特别狼狈,上课上得乱七八糟,做事也没做好,形象越来越差,和人联系也在减少。甚至和同门们也疏远了的样子。
          也许可以再振奋一下精神,经常过来写点东西。谁知道呢。再说!

    [转]UNIX/Linux编程工具

    UNIX/Linux编程工具- -

                                          


    anjuta

    建立一个新的应用项目
    先请打开 Anjuta. 请选择菜单项 File -> New Project. GNOME应用程序精灵
    "GNOME Application Wizard" 将会出现.
    尽管人们只要点击"下一个"(Next)按钮就可以,而不必去管精灵对话框上有些什么信息,这里还是希望您能读一下对话框上的每一条信息。现在,在您读完精灵第一步的对话框上的信息后,请按
    Next 按钮。

    第二步非常关键。这里您需要决定您要建立的应用程序的类型。让我们选择
    "Gnome Application" ,然后继续走下去。
    第三步要确定应用程序的基本配置。请非常仔细地填入应用程序的配置信息。在本教程中,请输入以下信息。


    Project Name: Hello World(程序项目名)

    Author: (你的名字)

    Version: 0.1(版本号)

    Program name: hello(程序名)

    Source Directory: src(源程序子目录)

    Documents Directory: doc(说明文件目录)

    Pixmaps Directory: pixmaps(图象文件目录)

    下面第四步选择编成语言;这里我们选 C 语言。 如果您不想要,您可以去除
    Gettext 功能项. 您最好为本应用程序项目选择一个图标,该图标将会出现在
    GNOME 应用程序菜单中。这里我们选取 Hello World example作为项目名, 在 Group
    域选取 Applications。最后点击 Next 按钮和 Finish
    按钮。这时本应用程序项目就建立起来了。

    因为我们只是在建立一个例子程序,我们可以轻松前行。如果我们是在建立一个要在现实世界使用的应用项目,
    那我们在填写应用程序精灵每一步的参数时可要格外小心,因为它们对您的应用程序项目来说非常重要。

    设计用户界面
    在与应用程序精灵对话结束之后, Anjuta
    就开始建立您的应用程序项目的目录结构,运行参数配置脚本并建立应用项目本身。 整个创建过程的进行情况显示在
    Anjuta 开发环境的下部。创建过程结束后,
    屏幕的左边示出应用项目树结构。这个树结构中包含您的源程序文件,说明文件和图形文件。

    现在是启动 GLADE 并用其设计图形用户界面的时候了。请到菜单项 View->Edit
    Application GUIs 去运行 GLADE。 您将看到三个窗口: 1) Glade 主窗口, 2)
    属性窗口, and 3) 绘图工具窗口。



    Figure 1. Glade 窗口

    因为我们并不是在创建一个真正要用的王牌应用程序, 我们不必取预置的 Gnome
    设置。取一个简单的 GTK 视窗就行了。请点击 Glade 主视窗上列出的第一项
    (hello_app), 然后按 Del 删除键。

    现在到工具视窗(Palette), 点击第一个图标。这时一个空白的 GtkWindow
    建起来了。这将是我们的应用程序的主视窗
    window1。再到属性视窗(Properties),敲入标题"Hello World!".
    现在再到工具视窗上选取一个垂直包容框(Vertical Box Container)放到主视窗 window1 上。列数取为 2.



    Figure 2. Palette icons

    这样,主视窗被切分为同等大小的上下两部分.
    同样地,我们再用水平包容框将这两部分各自再切分为左右两部分。 这时主视窗应该看起来这个样子:



    Figure 3. 用户界面

    现在再从工具视窗中取出两个按钮,分别加到主视窗下面的两个框中。再把这两个按钮的名字和标签属性设置如下:

    左按钮:
    名字: BT_OK

    标签: OK

    右按钮:
    名字: BT_EXIT

    标签: Exit



    在视窗的上半部,左边再加上一个标签控件;在上半部右边加上一个输入框
    Entry 控件。该输入框的名字取为 ENTRY。将上述标签控件的标签属性置为 'What's
    your name, sir?'.

    现在在属性视窗的属性档(Signals tab)上把两个按钮都和
    Clicked事件连接起来. 使用GLADE预设的反向调用函数名. 请不要忘记点击 Add 按钮.
    这种常见的错误会导致产生空白的 callbacks.c 文件. 在源文件callbacks.c上,我们将会通过
    Anjuta界面加入 源代码.

    现在,主视窗看起来似乎不那么漂亮。您可以试试改变视窗的宽度和高度,以及试试改改水平和垂直包容框的几个属性,
    看看能不能让视窗好看些。(注意:您可到菜单View,选择控件树,然后选择控件。
    ) 下面是一些属性的设置:


    将下面的水平包容框的属性 Homogeneous 置为Yes;

    将属性视窗的定位档的按钮的属性 Fill 置为 Yes;

    将主视窗 window1 的属性 Grow 置为No.

    把这些属性改来改去后,我的主视窗的样子如下:



    Figure 4. 最终的界面

    设计好界面后,在Glade主视窗上点击"存盘"按钮,然后再点击"创建"按钮.
    这就按您新设计的界面更新了您的 应用项目的src目录下的源文件
    interface.c。现在,让我们选菜单 File -> Exit,回到 Anjuta 用户界面下。开始编程啦!

    编辑程序
    现在回到 Anjuta 环境中来,您应该可以在屏幕左边的项目源程序列表中看到
    callbacks.c. 双点击打开该程序.
    这样我们在Anjuta集成开发环境的左边就可以编辑该程序了。

    有时一事物如果是有色彩的话就会变得更容易理解、更有趣。Anjuta
    的"语法强调色"功能 (在"Format"菜单上)就属于这种情况.
    Anjuta还有很多很多有用的功能,您可以慢慢品玩。
    也许现在花点时间熟悉熟悉这个集成环境是很有好处的。

    现在回到 callbacks.c 文件,我们看到两个反向调用函数: on_BT_OK_clicked
    和on_BT_EXIT_clicked.
    让我们在第二个函数中加入一个函数调用:gtk_main_quit()。 这样,该函数变成:

    void
    on_BT_EXIT_clicked (GtkButton *button, gpointer user_data)
    {
    gtk_main_quit();

    }


    这个函数调用的目的是当用户点击退出按钮时,整个应用程序会结束。
    与此相仿,我们在 on_BT_OK_clicked函数中加入下列函数调用:

    void
    on_BT_OK_clicked (GtkButton *button, gpointer user_data)
    {

    GtkWidget *entry = lookup_widget (GTK_WIDGET(button), "ENTRY");
    GtkWidget *msgbox = gnome_app_new("Hello World", "Hello World");
    gchar *text1, *text2;

    text1 = gtk_entry_get_text (GTK_ENTRY(entry));
    text2 = strcat ("Hello, ", text1);
    gnome_app_message (GNOME_APP(msgbox), text2);

    }


    现在我们将源程序文件 callbacks.c 存盘,然后关闭(可用菜单 File
    上的选项或用工具条上的图标)。
    现在到了测试您程序的时候了;这一定很有趣。先选择菜单项 Build->Build
    All。 这时Anjuta就开始编译和链接项目里的源程序main.c, interface.c,
    support.c and callbacks.c, 然后将产生的可执行文件hello放到 src
    目录。编译器一般会用 gcc。

    如果您幸运, 编译过程没有任何错误信息的话,请选菜单项 Build->Execute
    于是Anjuta 开辟一个终端视窗,并在其上运行您的应用程序 Hello World!
    请在输入框上输入您的名字,然后点击 OK 按钮.
    希望这时您的应用程序回您一个问候:Hello ... 您可再敲入一个问候词,然后点退出按钮
    Exit,看看程序能否正常退出。如果正常退出,那真好! 您的辛勤劳动终于有了结果!

    这时您可把您的应用程序安装到视窗系统中去:选菜单项 Build->Install
    尽管您现在也许并不想为您的应用程序创建一个tarball文件,
    但也许以后您要发行软件时就需要这样做了。 在发行应用程序前,务必要填好 TODO,ChangeLog,
    INSTALL 和 README 这几个文件. 要创建一个应用程序的发行版,请点击 Build->Build
    Distribution 创建过程也许会持续几秒钟,最终会在
    /home/(username)/Projects/hello/ 目录下建立一个文件 hello-0.1.tar.gz。
    现在您可以拿着这个证明您能力的可执行文件到处去炫耀炫耀了!