我尝试过设置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吗?
先谢谢。
答案 0 :(得分:1)
当您说您已将库添加到项目中时,是表示您已将它们添加到编译器源目录中,还是将库源文件作为“现有项目”添加到项目本身?
通常会出现未定义的引用,因为源文件尚未添加为项目的链接。如果它们未被添加以便它们显示在解决方案资源管理器中,则Studio不会将它们作为构建目标添加到Makefile中。未定义的错误是链接器在无法找到编译的目标文件时抱怨(因为它们从未构建为开始时)。具体来说,这是在我的Studio 5教程的“编译器和链接器设置”,步骤11中。
这意味着您必须在两个位置添加库(C ++编译器设置和链接/现有项目到项目本身)。如果你已经完成了这两件事,我不确定是什么,因为它总是对我们有用。您还可以查看我们使用Arduino with Atmel Studio 6的更新教程,但它使用相同的基本策略。
编辑:作为附录,如果您不喜欢Atmel Studio工作流程,可以使用Eclipse:http://arduino.cc/playground/Main/DevelopmentTools 由于您仍在设置自定义工具链来复制Arduino IDE,因此可能存在一些相同的问题。您的特定里程可能会有所不同。
AVR Studio 4基于Eclipse。它在这一点上已经很老了,但是由于这个原因,它也有一个定义明确的工作流程,所以如果你不需要这些新功能,它很有可能会有效。
答案 1 :(得分:0)
代码块也很棒。 您可以将这个Arduino特定版本与向导和模拟器一起使用,随时可以使用。 http://www.arduinodev.com/codeblocks/