我試圖在我的AVR項目中使用AVR Crypto Lib(http://avrcryptolib.das-labor.org/trac/wiki/AES)中的AES函數,但是當我複製所有需要的文件,它給了我下面的錯誤。我在Windows上使用WinAVR,並在AVR Studio 5上嘗試使用默認項目,但未成功。AVR Crypto Lib中的AES函數沒有編譯
main.o: In function `main':
c:\.../main.c:40: undefined reference to `aes128_init'
c:\.../main.c:41: undefined reference to `aes128_enc'
"make.exe": *** [main.elf] Error 1
這就好像它甚至沒有嘗試讀取其中存在這些函數的.c文件。該網站上的例子說調用#include「aes.h」,如果你看看那個文件,它會調用所有其他的.h文件。
如果我編輯.h文件並告訴它們包括自己的.c文件 - 例如,在aes_keyschedule.h中,我告訴它包括「aes_keyschedule.c」這種工作,並使'aes128_init'消息消失,但引入更多問題。最終,當我到達asm.S文件時,它不會編譯。這當然不是它應該如何工作,但我不知道其他人是如何得到這個編譯。
所以我想我會問 - 有沒有其他人體驗過這個或有沒有人有一個非常簡單的AES示例,我可以看看?也許有比AVR Crypto Lib更好的東西?
謝謝 亞歷
這是一個有點本地化問題/答案的,但感謝彙報。也許你可以把它報告給一個更集中的AVR社區。過一段時間後你可以接受你自己的答案。 –