GCC


  GCC rules
  
  你能想象使用封闭源代码的私有编译器编译自由软件吗?你怎么知道编译器在你的可执行文件中加入了什么?可能会加入各种后门和木马。Ken Thompson是一个闻名的黑客,他编写了一个编译器,当编译器编译自己时,就在'login'程序中留下后门和永久的木马。请到 这里 阅读他对这个杰作的描述。幸运的是,我们有了gcc。当你进行 configure; make; make install 时, gcc在幕后做了很多繁重的工作。如何才能让gcc为我们工作呢?我们将开始编写一个纸牌游戏,不过我们只是为了演示编译器的功能,所以尽可能地精简了代码。我们将从头开始一步一步地做,以便理解编译过程,了解为了制作可执行文件需要做些什么,按什么顺序做。我们将看看如何编译C程序,以及如何使用编译选项让gcc按照我们的要求工作。步骤(以及所用工具)如下:预编译 (gcc -E), 编译 (gcc), 汇编 (as),和 连接 (ld)。
  
  开始...
  
  首先,我们应该知道如何调用编译器。实际上,这很简单。我们将从那个闻名的第一个C程序开始。(各位老前辈,请原谅我)。
  
  #include...[ 查看全文 ]

2016-02-19 标签:

GCC的相关文章

手机页面
收藏网站 回到头部