0

我尝试设置 AVR studio 5.1 和 6 来使用我的 Arduino 库。我遵循的说明在这里: http ://www.engblaze.com/tutorial-using-avr-studio-5-with-arduino-projects/ 我的项目包括必要的库,它们位于同一目录中。它们也已添加到 AVR Studio 中的项目中。我仍然遇到对所有内容的未定义引用的问题。

我的问题是:我该如何解决这个问题?跳过上述说明中的所有环节后,还有其他人有同样的问题吗?

我应该使用 AVR Studio 4 吗?有同样的问题吗?我应该跳过 AVR Studio 而使用 Eclipse 吗?

先谢谢了。

4

2 回答 2

1

当您说您已将库添加到项目中时,您的意思是您已将它们添加到编译器源目录,还是将库源文件作为“现有项”添加到项目本身?

未定义的引用通常会出现,因为源文件尚未作为链接添加到项目中。如果未添加它们以使其显示在解决方案资源管理器中,则 Studio 不会将它们作为构建目标添加到 Makefile。未定义的错误是链接器在找不到已编译的目标文件时抱怨(因为它们从未构建过)。具体来说,这在我们的 Studio 5 教程的第 11 步“编译器和链接器设置”中。

这意味着您必须在两个地方添加库(C++ 编译器设置和作为项目本身的链接/现有项)。如果您已经完成了这两件事,我不确定发生了什么,因为这对我们总是有效的。您还可以查看我们更新的教程,了解如何将Arduino 与 Atmel Studio 6 结合使用,尽管它使用相同的基本策略。

编辑:作为附录,如果您不喜欢 Atmel Studio 工作流程,可以使用 Eclipse:http ://arduino.cc/playground/Main/DevelopmentTools 可能会出现一些相同的问题,因为您仍然设置自定义工具链来复制 Arduino IDE。您的特定里程可能会有所不同。

AVR Studio 4 基于 Eclipse。在这一点上它已经很老了,但也有一个明确定义的工作流程,所以如果你不需要新功能,它很有可能会起作用。

于 2012-09-24T02:32:16.300 回答
0

代码块也很棒。您可以将这个 Arduino 特定版本与向导和模拟器一起使用,一切准备就绪。 http://www.arduinodev.com/codeblocks/

于 2012-07-01T20:55:11.343 回答