2015-01-13

Mac 解決編譯 Arduino 程式出現的 Robot_Control 錯誤

阿舍之前都是在 Ubuntu 或是 Raspberry Pi 上編譯 Arduino 的程式比較多,幾乎沒在 Mac 上編過 Arduino 的程式,而今天,懶的去開 Raspberry Pi 來用,所以,就把 Arduino Uno 板直接插在 Mac 上,準備在 Mac 上編譯好程式就直接上傳到 Arduino Uno 板來用,但是,運氣不錯,一開始 Build 之後,就跳出一堆 Robot_Control 程式庫的錯誤訊息 ... 可是,阿舍明明就沒引用到這個 Robot_Control 程式庫哩 ! ... 有點怪 ~~

只有用到某些 Library 時才會遇到 

阿舍這次寫的 Arduino 程式,除了 Wire 程式庫以外,還了一個藍牙用的 SoftwareSerial 程式庫,阿舍不記得上次引用這個 SoftwareSerial 程式庫的時候,會用到 Robot_Control 程式庫哩 ! ... 阿舍想了一下,想到說,是不是阿舍有把 Arduino IDE 的環境設成是用 Arduino Robot Control  這塊板子,於是,就檢查了一下,結果,就還是 Arduino Uno 沒錯哩 ! 

好吧 ! 只能去找找看,是不是有人和阿舍遇到相同的問題哩 ! ...  嗯 ...  果然 ! 阿舍並不孤單,不是只有阿舍遇到哩 ! 而且,好像是 Mac 比較會有這個問題哩 ! ... 原來,這個問題因為程式庫引用順序所造成,阿舍用到的 Wire 程式庫的讀取順序是在 Robot_Control 的後面,因此,才會先讀到 Robot_Control 就出問題了哩  !

這個... 應該算是 Arduino 1.0.5 版的編譯器的一個 Bug 吧 ! 解決方有二種,第一種就是降版到  Arduino IDE 1.0.4 或是升版到 Arduino 1.5.x 版哩 ! 而第二種,就比較簡單,就是去把 Arduino.App 展開,然後,到裡面的 Contents/Resources/Java/Libraries 資料夾下,把「Robot_Control」和「Robot_Motor」這二個資料夾給移除 ( 一定要移除或搬走,改名字沒有用,阿舍有試過了哩 ! ... )

阿舍很確定自己不會用到「Robot_Control」和「Robot_Motor」這二個程式庫,所以,阿舍就選第二種方式,把那二個資料夾刪除,再把之前編譯時所建立的 .build 資料夾給砍掉後,重新編譯就可以正


[+] Ubuntu 指令新手會用到的35個技法 - 這是以阿舍的使用經驗編寫出來的電子書,三天內應該就看的完,學的起來哩 ! 有空就參考一下囉 ! ... ^^=

關於阿舍

好文不藏私,請多分享囉!! ^^=



沒有留言 :

張貼留言

如果留言後,發現留言不見了,這通常是因為 Goolge 把它認為是垃圾留言了,請用信件通知阿舍調整 ( ayubiz@gmail.com )。謝謝 !