Caffe_initial_commit

Author Avatar
Tianqi Zhang 7月 20, 2018

前言

又是一个新开的天坑,希望自己能够坚持下去吧,技术考古还是很有意思的。Caffe是很规范的C++大型工程了,希望这样的考古能学到不少东西。

Initial Commit

2013年9月13号,Yangqing Jia大佬提交了第一个commit,initial commit的东西当然不多,不过还是有些意外的惊喜的,我们来看看,这个commit在GitHub上的超链接是c24f3c3f9914ca8fc946e7129acd5fa50c16c65f

第一次只提交了.gitignore和README,代码如下

.gitignore:

# .GITIGNORE

# Compiled Object files
*.slo
*.lo
*.o

# Compiled Dynamic libraries
*.so
*.dylib

# Compiled Static libraries
*.lai
*.la
*.a

README.md

caffeine
========

caffeine.

首先来看.GITIGNORE,一开始只是忽视了一些编译过程中的Object files和库文件,详细说一下各个后缀名都是对应了什么文件。

Object files

  1. .slo: 这个文件我没有查到
  2. .lo: 使用libtool编译出的目标文件,其实就是在o文件中添加了一些信息
  3. .o: 普通的Object file

Dynamic libraries

  1. .so: Linux环境下的动态链接库
  2. .dylib: bsd(Berkeley Software Distribution)下的动态链接库

Static libraries

  1. .lai: 这个我也没有查到
  2. .la: libtool自动生成的一些共享库
  3. .a: Archive File, Linux下的静态库

好玩的是原来caffe一开始的名称是caffeine…

libtool

总的来说libtool是一个可以避免我们费心处理各种库的依赖关系的工具

libtool下载地址

libtool官网

libtool介绍