养成良好的编程习惯-一个库一个文件夹

今天在linux上进行了比较复杂的编译和测试。

先描述一下我比较失败的编译经验,希望能把刚才繁琐的动作的动作描述清楚。


情景重复:

1.cpp ----> lib1.so

2.cpp ----> lib2.so

3.cpp ----> exe


好啦,我介绍下项目环境。

cpp文件:

source/bak(这个下面是:1.cpp.bak, 2.cpp.bak, 3.cpp.bak

source/*.cpp

工程:

project/bak(这个下面是:Makfile1,Makfile2, Makfile3)

project/Makefile


现在进入我繁琐的事情了:

为了编译 lib1.so,我做了一下几个动作:

①rm project目录下的所有的Makefile文件

②从project/bak中拷贝Makfile1到project目录,并改为Makefile。

③rm source目录下的所有的.cpp文件

④从source/bak中拷贝1.cpp.bak到source目录,并改为1.cpp。

当然,如果编译一次,这个当然不是问题。但是,如果,你需要编译几十次,这些多余的脑力会成为你找到真理的障碍。(找到真相本来就很艰难,表增加额外的险阻)


还好,今天头脑还比较清醒,还是挺过去了。


下午,我是这样做的:

cpp文件:

source/1/1.cpp

source/2/2.cpp

source/3/3.cpp

工程:

project/1/Makefile

project/2/Makefile

project/3/Makefile


现在要好很多了。是吧。


我在这里记下微不足道的事情,但是,我觉得很重要。

一·

减少你查bug时的痛苦,把精力放在刀刃上。

二·

让你的查错误变得有迹可循,不会覆盖掉以前的测试程序。


阻碍你做这样的事情的原因:

一·

比如,你需要额外的知识,比如Makefile的相对路径等问题。

二·

麻烦。你可能觉得现在既有的东西能够解决问题,为什么要引入新的东东。其实,最重要的是,你怕改变。



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值