Я всегда просто использовал следующее и смотрел «Потоки на ядро:».
hostname:~ # lscpu
Architecture: x86_64
CPU(s): 24
Thread(s) per core: 2 <-- here
Core(s) per socket: 6
CPU socket(s): 2
NUMA node(s): 2
Vendor ID: GenuineIntel
CPU family: 6
Model: 44
Stepping: 2
CPU MHz: 1596.000
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 12288K
Однако обратите внимание , этот метод не сработает, если какой-либо логический процессор был отключен простой командой
echo 0 > /sys/devices/system/cpu/cpuX/online
Как вы уже сами выяснили, вам нужно объединить 2 строки
make defconfig BR2_DEFCONFIG=../myProc_kernel/configs/myProc_defconfig
make O=../MyProc_kernel
в
make defconfig BR2_DEFCONFIG=../myProc_kernel/configs/myProc_defconfig O=../MyProc_kernel
Чтобы ответить на дополнительный вопрос «почему», «O=» создает оболочку для команды make, чтобы использовать основной каталог установки buildroot для пакетов и ваш вновь созданный каталог для файла конфигурации, сборки и вывода.
Оболочка должна быть на месте, чтобы ее можно было использовать для создания defconfig. В качестве альтернативы вы можете поменять местами две строки, чтобы сначала создать оболочку, а затем использовать ее для создания конфигурации.
Проверка 8.5 в Buildroot manual
For ease of use, Buildroot generates a Makefile wrapper in the output directory - so after the first run, you no longer need to pass O=<...> and -C <...>,
Ну, я нашел, как сделать то, что он хотел. Эти две строки должны быть объединены:
make defconfig BR2_DEFCONFIG=../myProc_kernel/configs/myProc_defconfig
make O=../MyProc_kernel
в одну строку:
make defconfig BR2_DEFCONFIG=../myProc_kernel/configs/myProc_defconfig O=../MyProc_kernel
Затем все компилируется в папку /MyProc/
и ничего не делается в папке buildroot-2018.02
.