Hi All,
I am trying to run some test with my iMX6 board with the above stated sdk and i m getting following errors
Linking sdk_unit_test
/opt/arm-2012/bin/arm-none-eabi-ld: cannot find crtbegin.o
/opt/arm-2012/bin/arm-none-eabi-ld: cannot find crti.o
/opt/arm-2012/bin/arm-none-eabi-ld: cannot find crtend.o
/opt/arm-2012/bin/arm-none-eabi-ld: cannot find crtn.o
my toolchain is
arm-‐none-‐eabi GCC toolchain
Sourcery CodeBenchLite 2012.03-‐56 4.6.3
does anybody have any idea.
with regards,
Muhammad Faisal.
Solved! Go to Solution.
I had this problem as well.
The issue was I had edited the CROSS_COMPILE variable in mk/common.mk to add the entire path to the toolchain:
CROSS_COMPILE = /opt/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI/bin/arm-none-eabi-
Not sure why that caused the issue, but what fixed it was instead of doing this, just add the toolchain path to your path variable.
In mk/common.mk, change the CROSS_COMPILE line back to:
CROSS_COMPILE = arm-none-eabi-
Then in your bash shell, do the following (adjust your path accordingly depending on where you installed the toolchain):
$ export PATH=$PATH:/opt/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI/bin
If you have multiple ARM build environments on your system, you might want to verify the build will pick up the right one:
$ which arm-none-eabi-gcc
/opt/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI/bin/arm-none-eabi-gcc
Then build via:
$ ./tools/build_sdk
Thanks for the reply.
Even this did not work for me but I solved this problem by doing following.
I followed the guide in the readme file and then I gave fullpath for the crtbegin....etc files, four of them in the linker script file and then I had manually link some files like max730.o to the libsdk.o file
and in the end it produces the elf and bin file and now I am struggling to downloand the file on the board.
with regards,
Muhammad Faisal.
I had this problem as well.
The issue was I had edited the CROSS_COMPILE variable in mk/common.mk to add the entire path to the toolchain:
CROSS_COMPILE = /opt/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI/bin/arm-none-eabi-
Not sure why that caused the issue, but what fixed it was instead of doing this, just add the toolchain path to your path variable.
In mk/common.mk, change the CROSS_COMPILE line back to:
CROSS_COMPILE = arm-none-eabi-
Then in your bash shell, do the following (adjust your path accordingly depending on where you installed the toolchain):
$ export PATH=$PATH:/opt/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI/bin
If you have multiple ARM build environments on your system, you might want to verify the build will pick up the right one:
$ which arm-none-eabi-gcc
/opt/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI/bin/arm-none-eabi-gcc
Then build via:
$ ./tools/build_sdk
Hi,
The answer of Matthews solve the issue,this is the right answer in the most elegant way:
Matthew Clemens a écrit:
I had this problem as well.
The issue was I had edited the CROSS_COMPILE variable in mk/common.mk to add the entire path to the toolchain:
CROSS_COMPILE = /opt/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI/bin/arm-none-eabi-
Not sure why that caused the issue, but what fixed it was instead of doing this, just add the toolchain path to your path variable.
In mk/common.mk, change the CROSS_COMPILE line back to:
CROSS_COMPILE = arm-none-eabi-
Then in your bash shell, do the following (adjust your path accordingly depending on where you installed the toolchain):
$ export PATH=$PATH:/opt/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI/bin
If you have multiple ARM build environments on your system, you might want to verify the build will pick up the right one:
$ which arm-none-eabi-gcc
/opt/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI/bin/arm-none-eabi-gcc
Then build via:
$ ./tools/build_sdk
Vincent
Hi,
I have .bin file as well as .elf file and .map file Which I generated through the
iMX6_Platform_SDK , I am not using any RTOS on my board.,,,,can you guide me
how can I dowload this .bin file on the board....the manufacturing tool dcoumentation
is too complicated for me ..believe me...can you guide some simple procedure for this task.
with regards,
Muhammad Faisal.
The way I have executed SDK binaries is through an SD card. Under Linux, just flash it this way
dd if=binfile of=/dev/sdX seek=2 bs=512
where X is the device node letter (check the correct letter with dmesg | tail).
Let me know if it works.
Leo
If you're booting from an SD card, the easiest way will be to program your SD card via a linux host as documented in the SDK readme (replace /dev/sdx with the device node of whatever is the path of your SD card reader):
sudo dd if=<path>/sdk_unit_test.ALL.bin of=/dev/sdx seek=2 skip=2 bs=512 && sync
If you're trying to get the code into on-board NAND, eMMC, or SPI-NOR, you'll need to use the mfgtool. I always recommend people give themselves the option to boot via SD at least on an initial board spin so you don't have to try to figure out how to get code into your on-board boot media before the rest of your hardware is validated (the mfgtool needs at a minimum USB and DDR functional).
Hi,
Can I use mfgtool to transfer .bin file to the chip using USB cable.....
with regards,
Muhammad Faisal.
I am not sure. But there are easier ways:
- on windows, I have done it through sb_loader.exe, located MFGtool/Utils/sb_loader folder;
- on linux, I have done it with this tool: boundarydevices/imx_usb_loader · GitHub
Leonardo,
I see you've used both sb_loader (freescale) and imx_usb (boundary devices). I have been using imx_usb on Linux, but I need the ability to load from a windows host (but would prefer not to use a GUI). I take the same image (as I used with imx_usb) and try to load it with sb_loader and I see differences on-target that I can't explain.
I simply run sb_loader -f "binfile", where "binfile" is the same file that I load using imx_usb. Is that the correct usage? Is there any documentation on sb_loader?
Thanks,
Ed
Leo,
Sorry, but I'm confused... I'm trying to use the sb_loader tool to push a boot image to my board. I don't want to use the SD card because the board I'm eventually going to use will not have one. Can you give me any other details on the sb_loader tool? Is there documentation for it anywhere?
Ed
my host computer is based on linux, I Have downloaded this imx_usb_loader...can you guide me how
can I use it ,,,,I mean where will I mention my .bin file which is needed to be dowloaded.
with regards,
Muhammad Faisal.
I have used it to load u-boot.bin through the USB. Check this page: http://boundarydevices.com/unbricking-nitrogen6x-sabre-lite-i-mx6-board/