I want to do an RSA encryption/decryption using my AT91SAM7S256 ARM MCU. After googling I found mbed TLS library. I download it on my Windows and extracted it in the directory of my project.

I was created the project using Keil IDE as below:

  1. Project >> New mVision Project
  2. Assigning a name to the project
  3. Choosing "AT91SAM7S256" under Atmel MCUs
  4. Accepting the following suggestion:

enter image description here

After that, in the following tab, I added the path of mbed TLS extracted directory to the Include Path of Keil(Path of header files, I think):

Project >> Option for Target "MyProjectName" >> C\C++

As the last step I did a right click on the project name in the right sidebar and using Add files to group AGroupName I added rsa.h and rsa.c of mbed TLS files to my project. I added a file named main.c that I myself was created it already with the simplest content:

#include "rsa.h"

int main(){
    return 0;

Here are the pictures of above steps:

enter image description here

enter image description here

Finally I tried to build this project from Project >> Build all target files, but I faced the following error :

Build target 'Target 1'
assembling SAM7.s...
compiling rsa.c...
mbedtls-2.0.0\library\rsa.c(30): error:  #5: cannot open source input file "mbedtls/config.h": No such file or directory compiling main.c...
main.c(1): error:  #5: cannot open source input file "rsa.h": No such file or directory Target not created

Well, I added config.h to the group just like rsa.c and rsa.h and replaced "mbedtls/config.h" with "config.h" in the rsa.c file and that error removed. but another similar error appeared. Well I added about 10 files and edit the content as described but I still faced similar error.

  1. I want to ask if is this the correct way? Am I should manually add all the files one by one? Or there is a better and efficient way?
  2. As the contents of mbed TLS library shows(make, makeinstall and so on) and as the extension of downloaded file shows(".tgz"), it is written for linux platform. Does that mean I can't use it in windows?
  3. As a starter, witch one is better for the above described project? Keil vs IAR IDE? Windows vs Linux platforms?

Note that this is the first step of project, I think I must add other algorithms also.

Thanks in advance.

  • \$\begingroup\$ To get you started, I would look at this question to see how to make a library instead of adding the code manually. stackoverflow.com/questions/30097062/… \$\endgroup\$ – Andrew Aug 20 '15 at 17:02
  • \$\begingroup\$ @Andrew Thank you for the link. Anyway, Am I did something wrong in the above steps? \$\endgroup\$ – Abraham Aug 20 '15 at 17:10
  • \$\begingroup\$ I did read the whole question but check this post Keil Dialog Semiconductor \$\endgroup\$ – Mahendra Gunawardena Aug 21 '15 at 0:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.