 make & Makefile. ... . ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . make & Makefile . . Make School of Computer Wuhan University ©hfwang - 1/36 - ... . ... . ... . ... . . . . . . . . . make & Makefile .1 make & Makefile 程序的编写步骤 依赖关系图 工程管理与 make make 的工作原理 规则与依赖关系 通配符的使用 变量的定义和引用 自动变量 模式规则 Makefile 的结构 make 命令参数与选项 常见的错误 依赖关系的自动生成 Turbo C 的 make 与 make 相关的命令 参考文献 ©hfwang ... . ... . ... . ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . make & Makefile . Free as in Freedom .GNU’s Not UNIX . . ©hfwang - 3/36 - ... . ... . ... . .0 码力 | 36 页 | 975.98 KB | 1 年前3 make & Makefile. ... . ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . make & Makefile . . Make School of Computer Wuhan University ©hfwang - 1/36 - ... . ... . ... . ... . . . . . . . . . make & Makefile .1 make & Makefile 程序的编写步骤 依赖关系图 工程管理与 make make 的工作原理 规则与依赖关系 通配符的使用 变量的定义和引用 自动变量 模式规则 Makefile 的结构 make 命令参数与选项 常见的错误 依赖关系的自动生成 Turbo C 的 make 与 make 相关的命令 参考文献 ©hfwang ... . ... . ... . ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . make & Makefile . Free as in Freedom .GNU’s Not UNIX . . ©hfwang - 3/36 - ... . ... . ... . .0 码力 | 36 页 | 975.98 KB | 1 年前3
 Data Structures That Make Video Games Go Round0 码力 | 196 页 | 3.03 MB | 6 月前3 Data Structures That Make Video Games Go Round0 码力 | 196 页 | 3.03 MB | 6 月前3
 Make Successor Build Systems: World Tour of Build Systemsvery low granularity and are limited in numbers. It is disabled by defaultParallelism Level 2 - Make, FASTBuild Targets are more granular and the size of the job pool can be specified by a flag (-j/--jobs)Parallelism same inputs and configuration, a target should yield identical outputsReproducibility Level 1 - Make, Ninja, FASTBuild Provide no real facility to ensure reproducibility and, thus, hermeticity is something level of granularity means that even small changes will rebuild very large targetsCaching Level 2 - Make, Ninja Check timestamps on the individual input files and rebuild targets if any change. Caching0 码力 | 115 页 | 7.02 MB | 6 月前3 Make Successor Build Systems: World Tour of Build Systemsvery low granularity and are limited in numbers. It is disabled by defaultParallelism Level 2 - Make, FASTBuild Targets are more granular and the size of the job pool can be specified by a flag (-j/--jobs)Parallelism same inputs and configuration, a target should yield identical outputsReproducibility Level 1 - Make, Ninja, FASTBuild Provide no real facility to ensure reproducibility and, thus, hermeticity is something level of granularity means that even small changes will rebuild very large targetsCaching Level 2 - Make, Ninja Check timestamps on the individual input files and rebuild targets if any change. Caching0 码力 | 115 页 | 7.02 MB | 6 月前3
 Pipes: How Plumbing Can Make Your C++ Code More ExpressiveJonathan Boccara @JoBoccara THE PIPES LIBRARY HOW PLUMBING CAN MAKE YOUR CODE EXPRESSIVE At the beginning of time…2 WORKING WITH COLLECTIONS IN C++ -∞ Now3 WORKING WITH COLLECTIONS IN C++ -∞0 码力 | 61 页 | 9.52 MB | 6 月前3 Pipes: How Plumbing Can Make Your C++ Code More ExpressiveJonathan Boccara @JoBoccara THE PIPES LIBRARY HOW PLUMBING CAN MAKE YOUR CODE EXPRESSIVE At the beginning of time…2 WORKING WITH COLLECTIONS IN C++ -∞ Now3 WORKING WITH COLLECTIONS IN C++ -∞0 码力 | 61 页 | 9.52 MB | 6 月前3
 跟我一起写 Makefile (PDF 重制版)一个示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.3 make 是如何工作的 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.4 makefile makefile 中使用变量 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.5 让 make 自动推导 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.6 makefile 环境变量 MAKEFILES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.12 make 的工作方式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3 书写规则 130 码力 | 81 页 | 628.51 KB | 1 年前3 跟我一起写 Makefile (PDF 重制版)一个示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.3 make 是如何工作的 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.4 makefile makefile 中使用变量 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.5 让 make 自动推导 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.6 makefile 环境变量 MAKEFILES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.12 make 的工作方式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3 书写规则 130 码力 | 81 页 | 628.51 KB | 1 年前3
 Linux 下 Makefile 的 automake 生成全攻略1 Linux 下 Makefile 的 automake 生成 全攻略 作为 Linux 下的程序开发人员,大家一定都遇到过 Makefile,用 make 命令来编译自己写 的程序确实是很方便。一般情况下,大家都是手工写一个简单 Makefile,如果要想写出一 个符合自由软件惯例的 Makefile 就不那么容易了。 在本文中,将给大家介绍如何使用 autoconf 和 automake 两个工具来帮助我们自动生成 符 合 自 由 软件 惯 例 的 Makefile , 这 样 就 可以 象 常 见 的 GNU 程 序 一 样 ,只 要 使 用 “./configure”,“make”,“make install”就可以把程序安装到 Linux 系统中去了。 这特别适合想做开放源代码软件的程序开发人员,又或如果你只是自己写些小的 Toy 程序, 那么这个文章对你也会有很大的帮助。 介绍 Makefile 是用于自动编译和链接的,一个工程有很多文件组成,每一个文件的改变都会导 致工程的重新链接,但是不是所有的文件都需要重新编译,Makefile 中记录有文件的信息, 在 make 时会决定在链接的时候需要重新编译哪些文件。 Makefile 的宗旨就是:让编译器知道要编译一个文件需要依赖其他的哪些文件。当那些依 赖文件有了改变,编译器会自动的发现最终的生成文件已经过时,而重新编译相应的模块。0 码力 | 14 页 | 701.04 KB | 1 年前3 Linux 下 Makefile 的 automake 生成全攻略1 Linux 下 Makefile 的 automake 生成 全攻略 作为 Linux 下的程序开发人员,大家一定都遇到过 Makefile,用 make 命令来编译自己写 的程序确实是很方便。一般情况下,大家都是手工写一个简单 Makefile,如果要想写出一 个符合自由软件惯例的 Makefile 就不那么容易了。 在本文中,将给大家介绍如何使用 autoconf 和 automake 两个工具来帮助我们自动生成 符 合 自 由 软件 惯 例 的 Makefile , 这 样 就 可以 象 常 见 的 GNU 程 序 一 样 ,只 要 使 用 “./configure”,“make”,“make install”就可以把程序安装到 Linux 系统中去了。 这特别适合想做开放源代码软件的程序开发人员,又或如果你只是自己写些小的 Toy 程序, 那么这个文章对你也会有很大的帮助。 介绍 Makefile 是用于自动编译和链接的,一个工程有很多文件组成,每一个文件的改变都会导 致工程的重新链接,但是不是所有的文件都需要重新编译,Makefile 中记录有文件的信息, 在 make 时会决定在链接的时候需要重新编译哪些文件。 Makefile 的宗旨就是:让编译器知道要编译一个文件需要依赖其他的哪些文件。当那些依 赖文件有了改变,编译器会自动的发现最终的生成文件已经过时,而重新编译相应的模块。0 码力 | 14 页 | 701.04 KB | 1 年前3
 FISCO BCOS 2.3.0 中文文档contract address:0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 # 查看当前块高 [group:1]> getBlockNumber 1 # 调用get接口获取name变量 此处的合约地址是deploy指令返回的地址 [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 查看当前块高,块高不变,因为get接口不更改账本状态 [group:1]> getBlockNumber 1 # 调用set设置name [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 set "Hello, FISCO BCOS" 0x21dca087cb3e44f44f9b882071ec6ecfcb50036 式参考这里。 [group:1]> getBlockNumber 2 # 调用get接口获取name变量,检查设置是否生效 [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 get Hello, FISCO BCOS # 退出控制台 [group:1]> quit 教程 本章将介绍使用FISCO0 码力 | 1227 页 | 10.79 MB | 1 年前3 FISCO BCOS 2.3.0 中文文档contract address:0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 # 查看当前块高 [group:1]> getBlockNumber 1 # 调用get接口获取name变量 此处的合约地址是deploy指令返回的地址 [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 查看当前块高,块高不变,因为get接口不更改账本状态 [group:1]> getBlockNumber 1 # 调用set设置name [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 set "Hello, FISCO BCOS" 0x21dca087cb3e44f44f9b882071ec6ecfcb50036 式参考这里。 [group:1]> getBlockNumber 2 # 调用get接口获取name变量,检查设置是否生效 [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 get Hello, FISCO BCOS # 退出控制台 [group:1]> quit 教程 本章将介绍使用FISCO0 码力 | 1227 页 | 10.79 MB | 1 年前3
 FISCO BCOS 2.1.0 中文文档of gas时交易一直在交易池中不被处理的Bug [https://security.webank.com/report/freelink/871/cbb01ea45c9d2324c311f4f6fc1ec7ef] 不同组间可以用相同的交易二进制重放的Bug [https://security.webank.com/report/freelink/870/880c699de2f2d87bdf69c189d0ca42cd] contract address:0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 # 查看当前块高 [group:1]> getBlockNumber 1 # 调用get接口获取name变量 此处的合约地址是deploy指令返回的地址 [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 用方式参考这里。 2. 调用合约通过callByCNS命令,使用方式参考这里。 1 # 调用set设置name [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 set "Hello, FISCO BCOS" 0x21dca087cb3e44f44f9b882071ec6ecfcb500360 码力 | 1058 页 | 740.85 KB | 1 年前3 FISCO BCOS 2.1.0 中文文档of gas时交易一直在交易池中不被处理的Bug [https://security.webank.com/report/freelink/871/cbb01ea45c9d2324c311f4f6fc1ec7ef] 不同组间可以用相同的交易二进制重放的Bug [https://security.webank.com/report/freelink/870/880c699de2f2d87bdf69c189d0ca42cd] contract address:0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 # 查看当前块高 [group:1]> getBlockNumber 1 # 调用get接口获取name变量 此处的合约地址是deploy指令返回的地址 [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 用方式参考这里。 2. 调用合约通过callByCNS命令,使用方式参考这里。 1 # 调用set设置name [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 set "Hello, FISCO BCOS" 0x21dca087cb3e44f44f9b882071ec6ecfcb500360 码力 | 1058 页 | 740.85 KB | 1 年前3
 FISCO BCOS 2.4.0 中文文档contract address:0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 # 查看当前块高 [group:1]> getBlockNumber 1 # 调用get接口获取name变量 此处的合约地址是deploy指令返回的地址 [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 查看当前块高,块高不变,因为get接口不更改账本状态 [group:1]> getBlockNumber 1 # 调用set设置name [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 set "Hello, FISCO BCOS" 0x21dca087cb3e44f44f9b882071ec6ecfcb50036 式参考这里。 [group:1]> getBlockNumber 2 # 调用get接口获取name变量,检查设置是否生效 [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 get Hello, FISCO BCOS # 退出控制台 [group:1]> quit 教程 本章将介绍使用FISCO0 码力 | 1314 页 | 11.21 MB | 1 年前3 FISCO BCOS 2.4.0 中文文档contract address:0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 # 查看当前块高 [group:1]> getBlockNumber 1 # 调用get接口获取name变量 此处的合约地址是deploy指令返回的地址 [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 查看当前块高,块高不变,因为get接口不更改账本状态 [group:1]> getBlockNumber 1 # 调用set设置name [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 set "Hello, FISCO BCOS" 0x21dca087cb3e44f44f9b882071ec6ecfcb50036 式参考这里。 [group:1]> getBlockNumber 2 # 调用get接口获取name变量,检查设置是否生效 [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 get Hello, FISCO BCOS # 退出控制台 [group:1]> quit 教程 本章将介绍使用FISCO0 码力 | 1314 页 | 11.21 MB | 1 年前3
 FISCO BCOS 2.2.0 中文文档contract address:0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 # 查看当前块高 [group:1]> getBlockNumber 1 # 调用get接口获取name变量 此处的合约地址是deploy指令返回的地址 [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 查看当前块高,块高不变,因为get接口不更改账本状态 [group:1]> getBlockNumber 1 # 调用set设置name [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 set "Hello, FISCO BCOS" 0x21dca087cb3e44f44f9b882071ec6ecfcb50036 态已更改 [group:1]> getBlockNumber 2 # 调用get接口获取name变量,检查设置是否生效 [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 get Hello, FISCO BCOS # 退出控制台 [group:1]> quit 2. 调用合约通过callByCNS命令,使用方式参考这里。0 码力 | 1156 页 | 10.03 MB | 1 年前3 FISCO BCOS 2.2.0 中文文档contract address:0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 # 查看当前块高 [group:1]> getBlockNumber 1 # 调用get接口获取name变量 此处的合约地址是deploy指令返回的地址 [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 查看当前块高,块高不变,因为get接口不更改账本状态 [group:1]> getBlockNumber 1 # 调用set设置name [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 set "Hello, FISCO BCOS" 0x21dca087cb3e44f44f9b882071ec6ecfcb50036 态已更改 [group:1]> getBlockNumber 2 # 调用get接口获取name变量,检查设置是否生效 [group:1]> call HelloWorld 0xb3c223fc0bf6646959f254ac4e4a7e355b50a344 get Hello, FISCO BCOS # 退出控制台 [group:1]> quit 2. 调用合约通过callByCNS命令,使用方式参考这里。0 码力 | 1156 页 | 10.03 MB | 1 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100














 
  
  
 