Как изменить исходный код пакетов Buildroot для разработки пакетов?
Я использовал buildroot для того, чтобы собрать цепочку инструментов, используя uclibc. Теперь buildroot загружает все пакеты, распаковывает их исобирает их все..
Я хочу изменить исходный код цепочки инструментов uclibc, а затем перекомпилировать цепочку инструментов с новым исходным кодом, и я просто не могу понять, как это можно сделать красивым способом...
После завершения сборки все извлеченные источники находятся в "
Поэтому я подумал, может быть, изменив файл.mk в пакете uclibc и заставив его использовать мой измененный исходный код вместо его загрузки и извлечения (пока не уверен, что это можно сделать там), но это кажется немного уродливым решением..
Поэтому мой вопрос заключается в следующем: есть ли лучший способ сообщить buildroot о создании пакета с использованием существующего исходного кода?
2 ответа
Пожалуйста, прочитайте руководство по Buildroot о <pkg>_OVERRIDE_SRCDIR
функциональность. Это именно то, что вы ищете.
минимальная *_OVERRIDE_SRCDIR
пример
Документы объясняют это, но здесь более быстрая версия для разбора.
Структура каталогов:
buildroot/
: подмодуль git с buildroot2017.02
linux/
Подмодуль git с ядром Linux, указывающий на ваш форк на https://github.com/you/linuxbuildroot_override
: содержит:LINUX_OVERRIDE_SRCDIR = ../linux
Сборка и запуск:
cd buildroot
make qemu_x86_64_defconfig
echo 'BR2_PACKAGE_OVERRIDE_FILE=../buildroot_override' >> .config
make
qemu-system-x86_64 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw -append root=/dev/vda -net nic,model=virtio -net user