Путь к кросс-скомпилированному заголовочному файлу Linux
Путь к кросс-скомпилированному заголовочному файлу Linux

Возможно, нам придется добавить новые заголовочные файлы при кросс-компиляции Linux.,Где находится этот заголовочный файл? Приложение «Скомпилировать» — это не то же самое, что программа ядра.,Скажите это отдельно.

Скомпилируйте приложение

Компилятор может найти заголовочный файл несколькими способами.

При компиляции -I указывает поиск пути

Язык кода:javascript
копировать
arm-linux-gnueabihf-gcc testtty1.c -o testtty1  -I/linux

Заголовочный файл в приведенном выше примере хранится в файле Linux в корневом каталоге, укажите путь.

Установите переменную среды C_INCLUDE_PATH (используется реже)

Язык кода:javascript
копировать
C_INCLUDE_PATH=/....(конкретный путь)экспорт C_INCLUDE_PATH

Точно так же, как настройка набора инструментов кросс-компиляции.

путь по умолчанию

Существует два типа файлов заголовков #include <>и#include ""。#include <>Используется путь к среде кросс-компиляции по умолчанию.,#include ""Текущий путь используется по умолчанию.

Вы можете выполнить поиск с помощью команды

Язык кода:javascript
копировать
echo 'main(){}'|arm-linux-gnueabihf-gcc -E -v -

Среди них, Arm-linux-gnueabihf-gcc зависит от вашего собственного использования инструментов кросс-компиляции (необходимо изменить в соответствии с инструментами кросс-компиляции), и результаты включают в себя следующие части:

Язык кода:javascript
копировать
#include "..." search starts here:#include <...> search starts here: /opt/pkg/petalinux/2018.3/tools/linux-i386/gcc-arm-linux-gnueabi/bin/../lib/gcc/arm-linux-gnueabihf/7.3.1/include /opt/pkg/petalinux/2018.3/tools/linux-i386/gcc-arm-linux-gnueabi/bin/../lib/gcc/arm-linux-gnueabihf/7.3.1/include-fixed /opt/pkg/petalinux/2018.3/tools/linux-i386/gcc-arm-linux-gnueabi/bin/../lib/gcc/arm-linux-gnueabihf/7.3.1/../../../../arm-linux-gnueabihf/include /opt/pkg/petalinux/2018.3/tools/linux-i386/gcc-arm-linux-gnueabi/bin/../arm-linux-gnueabihf/libc/usr/include

Это расположение заголовка по умолчанию для моей цепочки кросс-компиляции, если вы хотите использовать свой собственный #include. <>документ,Просто поместите заголовочный файл в указанное выше место.

Скомпилировать программу ядра

Для компиляции ядра требуется путь к ядру, который используется с использованием приведенного выше пути. по умолчанию。#include <>Ядро используетсяпуть по умолчанию。#include ""Текущий путь используется по умолчанию. Если он не найден в текущем каталоге, он перейдет в ядро. по значение по умолчанию.

Этот путь по умолчанию можно увидеть в Makefile верхнего уровня.

Язык кода:javascript
копировать
# Use USERINCLUDE when you must reference the UAPI directories only.USERINCLUDE    := \		-I$(srctree)/arch/$(hdr-arch)/include/uapi \		-I$(objtree)/arch/$(hdr-arch)/include/generated/uapi \		-I$(srctree)/include/uapi \		-I$(objtree)/include/generated/uapi \                -include $(srctree)/include/linux/kconfig.h
# Use LINUXINCLUDE when you must reference the include/ directory.# Needed to be compatible with the O= optionLINUXINCLUDE    := \		-I$(srctree)/arch/$(hdr-arch)/include \		-I$(objtree)/arch/$(hdr-arch)/include/generated \		$(if $(KBUILD_SRC), -I$(srctree)/include) \		-I$(objtree)/include \		$(USERINCLUDE)

Вы можете поместить заголовочный файл по указанному выше пути или изменить этот Makefile, увеличив путь к файлу (не рекомендуется).

boy illustration
RasaGpt — платформа чат-ботов на основе Rasa и LLM.
boy illustration
Nomic Embed: воспроизводимая модель внедрения SOTA с открытым исходным кодом.
boy illustration
Улучшение YOLOv8: EMA основана на эффективном многомасштабном внимании, основанном на межпространственном обучении, и эффект лучше, чем у ECA, CBAM и CA. Малые цели имеют очевидные преимущества | ICASSP2023
boy illustration
Урок 1 серии Libtorch: Тензорная библиотека Silky C++
boy illustration
Руководство по локальному развертыванию Stable Diffusion: подробные шаги и анализ распространенных проблем
boy illustration
Полностью автоматический инструмент для работы с видео в один клик: VideoLingo
boy illustration
Улучшения оптимизации RT-DETR: облегченные улучшения магистрали | Support Paddle облегченный rtdetr-r18, rtdetr-r34, rtdetr-r50, rtdet
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | Деформируемое внимание с большим ядром (D-LKA Attention), большое ядро ​​​​свертки улучшает механизм внимания восприимчивых полей с различными функциями
boy illustration
Создано Datawhale: выпущено «Руководство по тонкой настройке развертывания большой модели GLM-4»!
boy illustration
7B превышает десятки миллиардов, aiXcoder-7B с открытым исходным кодом Пекинского университета — это самая мощная модель большого кода, лучший выбор для корпоративного развертывания.
boy illustration
Используйте модель Huggingface, чтобы заменить интерфейс внедрения OpenAI в китайской среде.
boy illustration
Оригинальные улучшения YOLOv8: несколько новых улучшений | Сохранение исходной информации — алгоритм отделяемой по глубине свертки (MDSConv) |
boy illustration
Второй пилот облачной разработки | Быстро поиграйте со средствами разработки на базе искусственного интеллекта
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция с нулевым кодированием и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
Решенная Ошибка | Загрузка PyTorch медленная: TimeoutError: [Errno 110] При загрузке факела истекло время ожидания — Cat Head Tiger
boy illustration
Brother OCR, библиотека с открытым исходным кодом для Python, которая распознает коды проверки.
boy illustration
Новейшее подробное руководство по загрузке и использованию последней демонстрационной версии набора данных COCO.
boy illustration
Выпущен отчет о крупной модели финансовой отрасли за 2023 год | Полный текст включен в загрузку |
boy illustration
Обычные компьютеры также могут работать с большими моделями, и вы можете получить личного помощника с искусственным интеллектом за три шага | Руководство для начинающих по локальному развертыванию LLaMA-3
boy illustration
Одной статьи достаточно для анализа фактора транскрипции SCENIC на Python (4)
boy illustration
Бросая вызов ограничениям производительности небольших видеокарт, он научит вас запускать большие модели глубокого обучения с ограниченными ресурсами, а также предоставит полное руководство по оценке и эффективному использованию памяти графического процессора!
boy illustration
Команда Fudan NLP опубликовала 80-страничный обзор крупномасштабных модельных агентов, в котором в одной статье представлен обзор текущего состояния и будущего агентов ИИ.
boy illustration
[Эксклюзив] Вы должны знать о новой функции JetBrains 2024.1 «Полнострочное завершение кода», чтобы решить вашу путаницу!
boy illustration
Краткое изложение базовых знаний о регистрации изображений 1.0
boy illustration
Новейшее подробное руководство по установке и использованию библиотеки cv2 (OpenCV, opencv-python) в Python.
boy illustration
Легко создайте локальную базу знаний для крупных моделей на основе Ollama+AnythingLLM.
boy illustration
[Решено] ошибка установки conda. Среда решения: не удалось выполнить первоначальное зависание решения. Повторная попытка с помощью файла (графическое руководство).
boy illustration
Одна статья поможет вам понять RAG (Retrival Enhanced Generation) | Введение в концепцию и теорию + практику работы с кодом (включая исходный код).
boy illustration
Эволюция архитектуры шлюза облачной разработки
boy illustration
Docker и Kubernetes [Разработка контейнерных приложений с помощью Python]