I have three abilities: Develop software, Write books and Film reality. All are Free as in freedom.
-- www.huzheng.org

English German French Russian Spanish
Chinese Simplified Chinese Traditional Japanese Korean Portuguese



一切有为法,如梦幻泡影,如露亦如电,应作如是观。



胡正最近几年都没在工作,很穷了!欢迎捐赠,供养胡正阿罗汉!

谁借我2万元钱啊!

 文章搜索
 
文章分类
您所处的位置: 妖光linux编程首页 --> 文章列表 --> 胡正的技术文章
关于在linux下的编程.
2000.7.31

首先要学会C语言.可以看turbo c的资料,大部份tc程序都可直接拷过来用gcc编译.
 gcc a.c -o a
 注意要转换为linux的文本格式.

linux下编图形程序主要有:
   motif:   稳定,精简,但不漂亮. linuconf,mtv
   qt:      kde里的程序都是用的qt.
   gtk+     gnome里的程序都是用的gtk+(gnome将它扩展了,如菜单和工具条).
            gimp也是gtk+编的.我的yq也是. gtksee,xmms都是.

linux下还没有较出名的可视化开发工具(delphi正在移植,有个Kdevelop可编qt程序)
因此要用文本编辑器来打代码,文本模式下可用vi,emacs,mc的F4功能,图形模式下我喜欢
用gnome中的gedit,可打开多个文件.

要学会用的软件有:
gcc 编译器,egcs也一样.
make 先编一个Makefile,以后就可用make代替打长长的编译命令.每新建一个文件都要加入
     到Makefile中.可以用automake产生Makefile,gtksee就是,我不会.
xxgdb 编译时加上-g参数,xxgdb就可以调试了.
      gcc a.c -g -o a
      xxgdb a
p2c 把pascal转换为c.我知道在pascal中用str把整型转换为字符串,tc中的itoa函数gcc
    不支持.于是编了个pascal程序用p2c转换,原来要用sprintf函数.
    
资料:
<<开发Linux应用-用gtk+和gdk开发linux图形界面应用>> 好书呀,它的实例在我网站有载.
xman 可以察看一些c函数.
我站上有个tc教程.
/usr/include/gtk 下有gtk的头文件,看一下可知道控件有哪些属性和函数可用.
我想高手还会看gtk+的源码.我没看过.
gtk的faq http://linux.okstation.com可能有汉化版,我在一张盘上找到的.

抄代码:
 编window程序会碰到这样一个问题:
   以delphi中使用inf文件为例 
   调用delphi的inf库虽方便,但delphi的inf库大而全,一下加了几十K,而自己编又太麻烦
 在linux中就好多了,我就抄了x11amp(我没xmms的源码)的configfile.c,修改了一下,删去
 不用的函数,又加了几个yq专用的函数,就解决了文件的读取和储存问题.
 yq抄了许多gtksee的代码,学了许多技巧.我好佩服李路阳.
 qview我也抄了它的设置窗口的代码.
 gimp的启动窗口代码我没找到,它太复杂了.顺便说一下,gimp真强大,我的关于图片就是用
 的gimp编辑的(使用了几个滤镜而已),用得很顺手.  
 不要一次抄一大版的代码,那样难以接受,我一次把gtksee右边list的代码拷了过来,忙了
 几天也没看懂.

哪位同志帮我升一下yq,我被封机了.
yq代码很乱,主要是首次用c,没经验,以后最好学gtksee那样自制控件.
yq的关于xpm有160k,如果经常编译的话,可用about1.xpm代替about.xpm,还可去掉Makefile
中编译的-O2参数,以省编译时间,最好改一下Makefile,使编译时产生.o文件.用xpm储存大
图片不好,可参考gqview的例子.

介绍一下c的格式:
void
abc ()
{
    gint i;
    gchar a[10];
    
    i=1;
    if (i==1)
    {
	g_print("%d",i);
    } else
    {
	sprintf(a,"%d",i+1);
	g_print("%s",a);
    }
}	
就是要用tab键呀,我刚学会,以前打空格,又丑又麻烦.

编程很累,我编程时总是打开xmms听歌.有时烦了就把音量开到最大,咆哮几下.
我喜欢玩雷神和星际争霸(绝对是高手),也爱玩跳舞机.

大家一起努力,为争取世界范围的软件控制权而战斗.

有问题可到http://clinuxer.yeah.net中的论坛讨论.

返回列表






菩萨道Linux编程 欢迎来信交流!

大其心,容天下之物。虚其心,助天下之善。平其心,观天下之事。潜其心,明天下之理。定其心,应天下之变。

宇宙中有无数的有情众生,我发愿帮助他们觉醒。我的缺点无穷无尽,我发愿要克服他们。佛法是未知的,我发愿弄懂它。觉醒的道路是可望不可及的,我发愿要去实现它。

佛法大海,唯信能入,唯智能度,博大精深,难见难知,寂然高尚,不落逻辑,微妙甚深,唯有智者得见之,唯有行者得明之,唯有修行者得证之。
www.huzheng.org Copyleft 2000-2021 All rights reserved