linux - 在 fedora 上运行 gcc 获取 AVR

标签 linux gcc fedora avr atmega

我已经尝试解决这个问题几天了,但我找不到任何解决方案。 我给自己买了一个 Atmega88A,我想在 Fedora 上对它进行编程。 我尝试用 gcc 编写 C 语言,结果很顺利。但是当我试图包含 avr/io.h 时,我总是失败,因为它没有找到任何东西。我试图获得新版本的 gcc,但这也给了我一个错误。仅下载 avr/io.h 库并在我的文件中的某处实现它就足够了吗?或者有没有办法一起下载这些,包括我需要的所有其他库(例如 util/delay.h)

最佳答案

您需要使用专门针对 AVR 芯片构建的 GCC 版本,您不能只使用普通的 gcc可执行文件,因为它会产生错误类型的程序。如果您下载了正确配置的工具链,那么类似 #include <avr/io.h> 的行应该自动工作,因为工具链的默认包含搜索路径将被正确设置。

许多 Linux 发行版提供了一个 avr-gcc您可以使用包管理器安装的包,包括 Fedora。您可能必须安装 avr-libc包得到 avr/io.h标题。

如果由于某种原因这不起作用,您可以尝试从此页面下载 Microchip 的官方 AVR 工具链:

http://www.microchip.com/avr-support/avr-and-arm-toolchains-(c-compilers)

关于linux - 在 fedora 上运行 gcc 获取 AVR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48386045/

相关文章:

Linux-Perl : Printing the content of the script I am executing

php - 如何将 php cURL 升级到 7.36.0 版本?

python - 符号链接(symbolic link)文件比 X age 更新,然后在文件老化后删除符号链接(symbolic link)?

c++ - gcc 确保没有编译任何 c++ isms?

编译后的 C 程序,调用未定义/未声明的函数;没有报告错误或警告。为什么?

linux - 系统配置键盘在 Fedora 上不工作

linux - 在 Linux 中将以 'a' 'c' 或 'e' 开头的前 N ​​个文件从一个文件夹复制到另一个文件夹

gcc - 尝试在 GCC 中使用地址清理程序时出现 "undefined reference"错误

hadoop - 在fedora 29上安装和设置hadoop

linux - 如何从文本文件添加用户并生成随 secret 码 Fedora