|
发表于 2004-7-23 09:59:40
|
显示全部楼层
wide288太客气了,呵呵。
jerboa版主说的也对,那是最直接和根本的办法,不过,我还是认为,如果使用AutoTools管理项目的话,是不要去直接修改Makefile的,它是由autoconf 从 Makefile.in(它是由automake 从Makefile.am生成的) 生成的,如果有什么错误,那也是Makefile.am和configure.ac(旧的名称是configure.in)写的有问题。
(然而,写Makefile.am也是要对Makefile很熟悉的,现在只是在简化工作,呵呵。)
关于AutoTools工具集,在Debian下有一个包,是一本书: autobook.可以看看,autoconf也有一个文档包,automake就暂时没有了,还有libtool, 和intltool都有文档的。
我本人,现在对于linux下的开发,觉得是要掌握一个工具链(tool chain)的,这个可以说是自己编程工具包(program toolbox)里的一部分,是要自己慢慢寻找、实践和总结的。
呵呵,总是现有某些方面的需求,再去有针对性的工作的。比如linux下的测试工具有哪些呢?(仅仅抛砖引玉而已,不敢多言)
pkg-config是一个管理库的工具,但是并不是所有的库都受它的管理,如果自己开发了一个库,也可以发布一个相关的.pc文件,然后安装到/usr/lib/pkgconfig/下,在那个目录下有多少的pc文件,就可以在configure.ac中使用PKG_CHECK_MODULES这个宏,加入项目所需的库,这个宏是由pkg-config提供的,不是autoconf的宏。(man pkg-config).使用的时候,要的是去掉.pc剩下的主文件名.
至于libglade库,我写代码也经历过几个阶段,一开始的时候用glade-2生成源代码,然后再改; 然后,我完全手写所有的代码,发现关于界面构造部分的代码,重复而且修改起来太麻烦,只要界面需要改动的话,就要重新编译,太烦; 现在我只用glade-2生成一个.glade文件,这是一个xml类型的文件,使用libglade库载入,可以快速的构造出原型,修改起来也方便,主要的精力可以放在设计上了,而不是那些界面上的构建了。
gnome不止是一个桌面,我更看好它是一个开放的开发平台,你说呢?各种库在一起使用,很由意思的。
个人的经验,说出来,和大家共同进步。呵呵。 |
|