Я работаю над lpcxpresso (lpc1768)
. Я включил файл .h
и два файла .c
в мой уже написанный код (эти файлы были созданы с использованием flex
и bison
). Я хочу использовать опцию «Newlib (semihost)» под «быстрыми настройками». Когда я построить мой код он показывает некоторые ошибки:ошибка: конфликтующие типы для int32_t
"c:\nxp\lpcxpresso_6.1.2_177\lpcxpresso\tools\bin../lib/gcc/arm-none-eabi/4.6.2/../../../../arm-none-eabi/include/newlib_inc/stdint.h:79:21: error: conflicting types for 'int32_t'"
"c:\nxp\lpcxpresso_6.1.2_177\lpcxpresso\tools\bin../lib/gcc/arm-none-eabi/4.6.2/../../../../arm-none-eabi/include/newlib_inc/stdint.h:80:23: error: conflicting types for 'uint32_t'"
Когда я переключаюсь в библиотеку Redlib тогда не происходят эти ошибки, но возникают другие проблемы. Я хочу использовать Newlib.
Почему эти ошибки возникают? Что мне нужно сделать?
grep для 'typedef * int32_t' в ваши файлы и заголовки –
Нужно ли определять тип файлов, которые я предоставляю в качестве входных данных для flex и bison, после чего генерируются файлы .c и .h? – user3843784
Если grep не под рукой, вы можете прочитать вывод препроцессора, чтобы увидеть (a), как выглядят типы typedefs 'int32_t' (b), где расположены typedefs. После этого вы должны исключить, что нужно отбросить. – harper