小编tar*_*yte的帖子

如何确定传递给 make -j 选项的最大数量?

我想尽可能快地编译。去搞清楚。并想自动选择-j选项后面的数字。如何以编程方式选择该值,例如在 shell 脚本中?

输出是否nproc等于我可用于编译的线程数?

make -j1 make -j16

linux cpu make multiprocessor parallelism

58
推荐指数
3
解决办法
6万
查看次数

如何在 Ubuntu VM 上扩展文件系统分区?

我正在使用 vmware fusion 在 Mac 上将 Ubuntu Desktop 14.04 作为 VM 运行。我遇到空间警告问题,现在想从 20GB 扩展到 200GB。

我关闭了虚拟机,在 vmware 端增加了分配的磁盘空间:

  1. 关闭虚拟机
  2. VMWare Fusion -> 虚拟机 -> 设置 -> 硬盘 (SCSI)

然后它警告我应该增加来宾 VM 中的分区大小,这很不幸,因为我希望这会是自动的。

查看 Ubuntu 内部的磁盘使用分析器,它目前只能看到原始的 20 GB。如何将其增加到我分配的 200 GB?

我正在寻找比这里发布的更好的方向。

Disks应用程序中,我看到:

在此处输入图片说明

partition ubuntu vmware

53
推荐指数
4
解决办法
24万
查看次数

.PHONY GNU make 文件中的所有规则?

我的解释是否错误,我应该在所有制定规则之前将其放在首位:

.PHONY: all of my rules

all:
    echo "Executing all ..."

of:
    echo "Executing of ..."

my:
    echo "Executing my ..."

rules:
    echo "Executing rules ..."
Run Code Online (Sandbox Code Playgroud)

是否有过您不想遵循这个“公式”的情况?

http://www.gnu.org/software/make/manual/make.html#Phony-Targets

make

23
推荐指数
1
解决办法
2万
查看次数

如何将文件填充到所需的大小?

我有一个要填充的文件,直到它达到 16 MiB(16777216 字节)。目前它是 16515072 字节。差异是 262144 字节。

我如何垫它?

这似乎不起作用:

cp smallfile.img largerfile.img
dd if=/dev/zero of=largerfile.img bs=1 count=262144
Run Code Online (Sandbox Code Playgroud)

dd

20
推荐指数
3
解决办法
3万
查看次数

install 和 cp 有什么不同?

如何install从一个简单的副本不同,cp还是dd?我刚刚编译了一个小实用程序,并想将其添加到其中,/usr/sbin以便通过我的PATH变量可用。为什么使用一个 vs 另一个?

cp software-installation file-copy

18
推荐指数
3
解决办法
6551
查看次数

如果文件名更改,文件的哈希值是否会更改?

如果文件名、路径、时间戳或权限发生变化,文件的哈希值是否会发生变化?

$ echo some contents > testfile
$ shasum testfile 
3a2be7b07a1a19072bf54c95a8c4a3fe0cdb35d4  testfile
Run Code Online (Sandbox Code Playgroud)

hashsum

16
推荐指数
2
解决办法
4万
查看次数

如何编写 menuconfig 脚本来自动化 Linux 内核构建配置?

我想自动化一个 Linux 构建,但最终我需要运行一个看起来非常手动的步骤:make menuconfig. 这似乎在操作系统和内核配置之间同步配置?

cp git-tracked-config .config
make defconfig 
make menuconfig # <- how to automate/script this?
make V=s
Run Code Online (Sandbox Code Playgroud)

基本上,如何删除对make menuconfig构建脚本的调用?

顺便说一句,这是对构建错误的反应,该错误似乎在我从未调用 make menuconfig 的情况下运行时发生:

make[1]: *** No rule to make target `include/config/auto.conf', needed by `include/config/kernel.release'.  Stop.
Run Code Online (Sandbox Code Playgroud)

似乎在 makefile 中缺少规则,可能是因为 makefile 本身不存在,或者 makefile 尚未生成/变形以包含该规则,但这是一个单独的问题。

可能有一种更聪明的方法来解决这个问题。是否还有其他我没有跟踪但应该跟踪的配置(例如 oldconfig)?

bash make linux-kernel

12
推荐指数
1
解决办法
2万
查看次数

在 GNU Make 文件中使用哪个 shell?

我在 makefile 规则中看到过诸如echo, mv, if, 之类的东西for。似乎可以识别某种 shell 命令。这是 bash 吗?如何确定正在使用哪个 shell 以及我可以使用的完整关键字列表?

make

10
推荐指数
2
解决办法
7493
查看次数

如何删除目录中除隐藏文件外的所有文件?

在我把东西放进去之前,我正在清理一个输出目录。我想用一个.gitkeep文件跟踪 git 中的输出目录,但这一直被我rm -rf "$OUT_DIR"在 bash 脚本中的行删除。

有没有办法删除目录的内容但保留隐藏文件或以某种方式保留该.gitkeep文件?

bash rm

8
推荐指数
3
解决办法
1万
查看次数

如何判断 makefile 中是否使用了 GNU make?

我知道 GNU Make 是迄今为止最常用的,但我正在寻找一种方法来验证 GNU Make 是正在使用的实际 make 程序。是否有一个特殊变量可以从 Makefile 中打印,例如:

@echo "$(MAKE_VERSION)"
Run Code Online (Sandbox Code Playgroud)

如果我同时安装了 GNU Make 和其他变体怎么办?

which make
/usr/bin/make
Run Code Online (Sandbox Code Playgroud)

gnu-make

6
推荐指数
1
解决办法
3656
查看次数