c - 使用 Visual Studio 2010 构建 Linux 内核

标签 c linux visual-studio

<分区>

有人有关于如何使用 Visual Studio 2010 构建 Linux 内核的分步说明吗?

我试图直接搜索这个问题的解决方案,但没有成功。我发现了一些事情:

  1. Linux 内核是使用 GNU C 编译器构建的,因此先决条件是构建 Windows GNU C 编译器,以便编译 Linux GNU C 编译器。我知道 GNU C 编译器源代码可从 GNU.org 获得,但实际上有人使用 Microsoft Visual Studio 2010 C/C++ 编译器为 Windows 构建了 GNU C 编译器吗?

  2. 一旦制作出 Linux GNU C 编译器,我就可以使用它来构建 Linux 内核,以及启动和运行 Linux 系统所需的任何其他基于 Linux 的软件。这是我从 www.linuxfromscratch.org 得到的

有些人可能想知道为什么我不为此下载一个预编译的 GNU C 编译器?我工作的环境与任何外部网络完全隔离。甚至不允许使用运动鞋网。软件的每一部分都必须从源代码编译,并且必须手动输入这些源代码。它效率低下,但它也是偏执安全的。 (别问,我又不是老大……)

无论如何,我们正在考虑开发内部 Linux 机器,但我们从 Windows 7 和 Visual Studio 2010 开始。有人可以建议我们如何将所有重新输入的源代码转换为可用的 GNU Windows 的 C 编译器?也适用于 Linux?

感谢您的任何建议!

最佳答案

我认为 Ken Thompson 的 "Reflections on Trusting Trust"很好地解释了这个想法是多么徒劳和不够偏执。

You can't trust code that you did not totally create yourself. (Especially code from companies that employ people like me.) No amount of source-level verification or scrutiny will protect you from using untrusted code.

如果您没有自己从源代码编译,您怎么知道您将用于构建 GCC 的编译器是安全的?以及您为此使用的编译器?

您需要手动输入编译器的机器代码来引导您的 100% 安全环境。只有这样,您才能信任编译后的源代码,无论您是否手动输入它。

关于c - 使用 Visual Studio 2010 构建 Linux 内核,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6558935/

相关文章:

调用 XCreateColormap 会产生段错误

将内容从一个文件复制到另一个文件,段错误

linux - Linux 上的 FORTRAN 图形库

visual-studio - Visual Studio 引用 x64 GAC

C++:帮助理解这行代码

c - scanf with 'E' 跳过我的整个循环一次

c - Linux内核中使用AES加密解密

c - 制作命名管道并使用轮询

linux - 在 RPATH 中指定 $ORIGIN 的推荐 GNU 链接器选项是什么?

c# - 如何将可选文件复制到 VS 2017 中的输出目录?