我今天在menuconfig其复选框中使用了大括号中看到了一个内核选项。
{*} Button
Run Code Online (Sandbox Code Playgroud)
这未在屏幕顶部的图例中列出。
[*] built-in [ ] excluded <M> module < > module capable
Run Code Online (Sandbox Code Playgroud)
大括号代表什么?
我的理解cp src dest是:
src是一个文件并且dest不存在,但它的父目录存在,dest则创建。src是一个文件并且dest是一个文件,dest则被src.src是文件并且dest是目录,dest/src则创建。我试图避免情况#3。如果我编写一个脚本,假设它dest 不是一个目录,但在运行时结果是这样,我不想cp将文件放在错误的位置并继续静默。
相反,我希望它:
dest目录并将其替换为所需的文件。我也更喜欢这种情况以原子方式发生。使用单独的命令test -d来检查是否dest是目录会为 TOCTTOU 问题提供机会。
这可以做到cp吗?如果没有,是否可以使用任何其他类似的无处不在的命令来完成?
我对便携式解决方案和依赖非标准扩展的解决方案都感兴趣,只要它们相当普遍。
我喜欢 Gentoo 运行的“自己编译”的理念,但对非 ebuild 程序的支持如何?这可能只意味着二进制文件,但也包括不是通过 Emerge 获得的一般程序。
当系统上安装的实际内容与 Emerge 的簿记不同步时,这是一个大问题吗?
我已将 GCC 安装到自定义前缀。当它被调用时,它抱怨找不到它的一些内部二进制文件。
我电脑的“官方” GCC 将它们保存在这里:
/usr/libexec/gcc/i686-apple-darwin10/4.2.1
Run Code Online (Sandbox Code Playgroud)
该目录不存在于PATH.
make install在我的前缀下创建了一个类似的层次结构,并在那里安装了适当的文件。我可以将它添加到PATH,但这显然不是运行官方 GCC 所必需的。PATH如果可以,我想避免混乱。
我在configure脚本中寻找了一个选项来指定这个目录,但没有找到。libexecGCC手册中也没有提到。
官方 GCC 如何知道其内部二进制文件所在的位置,以及如何将这些信息提供给我的 GCC 主干构建?
我的 Ubuntu 引导已经存在iwconfig于/sbin. 我的印象/sbin是通常用于引导所需的程序,或者至少需要在/usr安装之前可用。
不过,我真的不明白iwconfig这些约定如何适合。理由是什么?
Linux 文件系统层次结构充满了未使用的文件夹,这些文件夹仅因历史原因而存在。
是否仅使用实际使用的目录安装任何发行版?