Beaglebone: C/C++ Programming Introduction for ARM Embedded Linux Development using Eclipse CDT

แชร์
ฝัง
  • เผยแพร่เมื่อ 9 ก.ย. 2024
  • A new version of this video is available (Jan, 2015) See: • Debian C/C++ Cross-Com...
    This video introduces C and C++ programming on the Beaglebone platform, which is applicable to any embedded Linux development. I quickly introduce how we can program directly on the beaglebone using a terminal window and point out the limitations. I show the steps that are necessary to set up the Eclipse CDT environment and use the Target Management RSE (Remote System Environment) plugin to communicate with the Beaglebone. I then demonstrate how we can use Eclipse CDT IDE to cross-develop (using arm-linux-gnueabi) applications for the ARM architecture. To do this, I write a short program that flashes the user LEDs on the Beaglebone. Finally, I demonstrate how we can set up a cross-debug environment, where we use gdbserver on the arm device and gdb-multiarch on the client device to establish a full debug environment.
    TangoBravo has pointed out that some paths have been changed in the current Angstrom image (June 2013). For instance, the path to the brightness properties has been changed in the latest version of Angstrom.
    The old path: /sys/class/leds/beaglebone::us­­­r3/brightness
    ...is now this: /sys/class/leds/beaglebone:gre­­­en:usr3/brightness
    So you have to make the change to get the LED to flash. Check your path to verify.
    If you use this video in your research, please cite:
    Molloy, D. [DerekMolloyDCU]. (2012, Apr, 10). Beaglebone: C/C++ Programming Introduction for ARM Embedded Linux Development using Eclipse CDT [Video file]. Retrieved from www.youtube.com....
    One common problem that arises with this setup:
    If bash reports "file not found" when executing an executable file that exists, the reason is that it doesn't recognise it as a binary file, and attempts to treat it as a script. The hypothetical script should start off with #!/path/to/interpreter and bash cannot find the (non-existent) interpreter so it returns "file not found". This could happen if for example you are running a 64-bit executable on 32-bit machine, or an x86 executable on an ARM target.
    In Eclipse your executable should display in your source directory as "HelloWorld - [arm/le]" in the project explorer window. If it does not then there is a problem with your compiler setup and you need to watch the steps again. If it does then one likely problem is if that you are using an ARM Linux platform that uses "hard floats" and that you have compiled using my setup which uses "soft floats". Here are two possible solutions:
    - Graemefisheratwork let me know that he has found that when using the ubuntu armhf distros, applications should be cross-compiled using arm-linux-gnueabihf- and not arm-linux-gnueabi-. This seems to have worked for him on the ubuntu 12.04 armhf build.
    - I'm using "Linux omap 3.2.18-psp14 armv71" in this video that I built myself which has defaulted to soft floating point numbers. There are floating-point options in gcc that you have to set when using hardware floating point numbers -- you should add " -mfloat-abi=hard" to your compiler options.

ความคิดเห็น • 181

  • @PiotrKundu
    @PiotrKundu 9 ปีที่แล้ว

    Derek Molloy Thanks for bringing "FUN" back to embedded programming!

  • @minminthein584
    @minminthein584 10 ปีที่แล้ว

    this video makes me to explore more about Beaglebone, because explanation given by instructor is quite clear.. Thank you so much

  • @rebelScience
    @rebelScience 8 ปีที่แล้ว

    I lived in Ireland for 8 years. Amazing country and people. Lived near the DCU too. thanks for your work.

  • @MrLoopguru
    @MrLoopguru 11 ปีที่แล้ว

    I added #include unistd.h (in angle brackets) and saved.
    Still it didn't work until I restarted Eclipse - from this point I had no problems anymore.
    Thanks Derek for a superb introduction!!

  • @majidwisam
    @majidwisam 12 ปีที่แล้ว

    This is the best Beaglebone tutorial found on the internet..... excellent

  • @jlpoole56
    @jlpoole56 11 ปีที่แล้ว

    Thank you. I really liked the debug on the BeagleBone from the other workstation aspect. This is new territory for me so being able to debug a program and monitoring the I/O from a debugger will truly be handy.

  • @eskibrew
    @eskibrew 11 ปีที่แล้ว

    Excellent tutorial :-) really easy to follow along. Just followed it with my BeagleBoneBlack after it was delivered this morning. If anyone else is using the BBB via the virtual ethernet port over the USB connection, the apparent IP address of the host machine from gdbserver is 192.168.7.1 with the BBB being on 192.168.7.2

  • @dcuzhang
    @dcuzhang 12 ปีที่แล้ว

    One of my best lectures back to the old days. :-)
    Sad that I did not have this model.

  • @onshoulders
    @onshoulders 12 ปีที่แล้ว

    This worked for me! I'm running 3.2.28-psp21 armv71 and without this flag I got the "No such file or directory" error.
    So I did Project>Properties>C/C++ Build>Settings>GCC C++ Linker>Miscelaneous. Add -mfloat-abi=hard to Linker flags.
    Thanks Derek for outstanding videos! Fun to watch!

  • @zargorn
    @zargorn 12 ปีที่แล้ว

    Thank you for uploading this! It was a great help! Concerning your comment at 20:45 : I managed to get rid of the copy step for deployment by creating a remote run configuration. Simply use the little pull down menu next to the run button to create one. It was straight forward. You have a choice to skip copying the file and just execute it. I had eclipse do the copying, though. The only slightly confusing thing is that the path to your binary has to inlude the name of the binary at the end.

  • @teuluPaul
    @teuluPaul 12 ปีที่แล้ว

    I have now been through the setup with Eclipse Juno on a Gentoo linux installation, and there is now an option to have Eclipse run gdbserver remotely, automatically. One problem I had, but resolved - I was getting error messages when debugging indicating xml was disabled at build time. In my case, this was a result of compiling arm-angstrom-linux-gnueabi-gdb without expat xml support. Once I fixed this, everything works as described in your video. You have saved me hours of experimenting! :)

  • @bluehornet6752
    @bluehornet6752 11 ปีที่แล้ว

    No problem! I just got a Beaglebone Black yesterday, and am anxious to try it out. I am taking a couple electronics courses this Summer, so it might be a few weeks before I get to try working with the 'bone again--but they are VERY cool little devices! Your videos haven given me literally *weeks* of material to work on...if not months! Thanks again for all you do for the community.

  • @TheDogWithTheMan
    @TheDogWithTheMan 11 ปีที่แล้ว

    well since i am new to this i guess i wont be able to find out exactly what's causing the issue. So i resorted to reinstalling eclipse, but instead, i downloaded eclipse preconfigured for c/c++, that solved my problem, thanks Prof Derek for these videos, cant wait to learn more!

  • @katemoon7476
    @katemoon7476 4 ปีที่แล้ว

    I'm finally getting around to the book he wrote now that I have time due to Corona. Thanks for videos.

  • @rmolin88
    @rmolin88 10 ปีที่แล้ว

    OMG!!! THIS the most helpful video I've seeing in MY LIFE!!! seriously a million thumbs up!!!

  • @frodohanks1986
    @frodohanks1986 12 ปีที่แล้ว

    Professor Molloy, thank you for these very useful tutorial ! I asked some people in Ubuntu forum, they told me that is a hidden type folder, need press CTRL+H can show the hidden folder, it's worked !

  • @cestarck
    @cestarck 12 ปีที่แล้ว

    Thank you Derek, that exactly was the problem I was using Ångström and I had to install it. I have already changed to Ubuntu 12.04 and that was not a problem, seems that it was included since the installation of the OS. Thank you again and congratulations for your excellent videos and notes.

  • @chunkMunky123
    @chunkMunky123 12 ปีที่แล้ว

    Nicely done, that man! I am having similar success using PHP and remote debugging with Eclipse.

  • @f13time
    @f13time 11 ปีที่แล้ว

    really appreciate the time you took to put these together, I am following along pretty easily. Sometimes when you type your linux commands (i.e. installing an application) I need to google what you did because you said the package name too quick and I can't read the command line in the video (maybe it's my video image). Just keep in mind, not complaining because the videos are awesome!

  • @eshgholah
    @eshgholah 11 ปีที่แล้ว

    Thanks a lot Derek. It is such a useful video. For a long time I wanted to setup a remote debugging environment and now I saw your video. It is great. Thank you.

  • @wambitz
    @wambitz 11 ปีที่แล้ว

    Greetings, I had trouble with the compiling section, I had the same error mentioned by Derek, however I wasn't able to solve the problem with the hard and soft floats solutions, and did several times the video steps, and I installed all the tools mentioned at the comment section because I didn't found the C++ folder, so it didn't work even after that, now here it's what I did, I wrote at the ubuntu terminal arm-linux-gnueabi-g++ -v, and there was the answer!

  • @0zmax
    @0zmax 10 ปีที่แล้ว

    I followed your video but I didn't have BeagleBone yet. But I tried with my Rasberry Pi with the help of another video tutorial correctly to install Eclips (-> Tuto Raspberry Cross-Compilation C/C++ only in french) . And then I went back to your video to make gdbserver and now it is work very good . I'm now able to cross compile C++ code for ARM. Thanks a lot ! Cross tutorial work also well :')

  • @DerekMolloyatDCU
    @DerekMolloyatDCU  11 ปีที่แล้ว

    Thanks Ludovic - good point, you could be right - I hadn't given it too much thought. I'm using QTCreator at the moment and building in debug mode is vital to getting things working correctly.

  • @shebotnov
    @shebotnov 12 ปีที่แล้ว

    in the first video I saw java and was scared to death. Good thing you use c/c++ and will show us how to use it with beaglebone

  • @verypiskedi
    @verypiskedi 12 ปีที่แล้ว

    Excellent tutorial Derek! It helped a lot for the begginer like me. Please keep going with serial transmission. Thanks for share !

  • @nagabhooshanamvemula469
    @nagabhooshanamvemula469 4 ปีที่แล้ว

    Wow, nice explanation . Thanks for sharing

  • @ShakirHussain2020
    @ShakirHussain2020 9 ปีที่แล้ว

    Awesome!!! Tutorial of this kind are gifts for beginners. Thanks and keep up the good work!!!

  • @DerekMolloyatDCU
    @DerekMolloyatDCU  11 ปีที่แล้ว

    Thanks for that. I will add a note to the video description.

  • @seyedhosseinhosseini
    @seyedhosseinhosseini 11 ปีที่แล้ว

    Great! good snapshots and clear audio. Tnx Derek

  • @graemefisheratwork
    @graemefisheratwork 12 ปีที่แล้ว

    Great video tutorials Derek. In response to some users not being able to cross-compile and execute correclty i.e. getting "bash: file not found" errors, I have found that when using the ubuntu armhf distros, apps should be cross-compiled using arm-linux-gnueabihf- and not arm-linux-gnueabi-. This seems to have worked for me on the ubuntu 12.04 armhf build.

  • @bubbadex33
    @bubbadex33 10 ปีที่แล้ว

    really great walk through. easy set up. thank you Derek.

  • @DerekMolloyatDCU
    @DerekMolloyatDCU  11 ปีที่แล้ว +2

    You may also have to type "sudo apt-get install g++-arm-linux-gnueabi" also.

  • @JDALSystems
    @JDALSystems 11 ปีที่แล้ว

    Great video, thank you for taking the time to do it.

  • @tcbetka
    @tcbetka 12 ปีที่แล้ว

    Right. That's what I ended up using as well...that and arm-linux-gnueabi-g++-4.6. That seems to work pretty well, although Eclipse can be a bit tempermental some times. Cool stuff otherwise though! Derek has done a wonderful service to everyone interested in these devices.
    Another thing people might want to do is to use "const char*" (instead of just "char*" for the string literals. My version of Eclipse complained that it had been deprecated, and so I threw "const" at it...and it was fine.

  • @photopicker
    @photopicker 11 ปีที่แล้ว

    Great tutorial Derek. Thanks a bunch.

  • @duckstance90
    @duckstance90 7 ปีที่แล้ว

    Hello Derek, first of all I would like to thank you for all your effort on these videos and books! This is an incredible help for me to get started with embedded linux.
    After a bit of researching i found that it would be easiest to make two separate debug configurations, one for the execution as root and one for normal execution.
    For the root bit what I did was adding a script /usr/local/sbin/gdbserver and added the following lines:
    #!/bin/bash
    sudo /usr/bin/gdbserver $*
    and made it executable: sudo chmod a+x /usr/local/sbin/gdbserver
    and see that in the file /etc/login.defs
    the lines
    ENV_SUPATH PATH= ....
    ENV_PATH PATH= ....
    contain /usr/local/sbin
    then in the debug configuration for the root execution change the command gdbserver to /usr/local/sbin/gdbserver
    if that still doesn't work you might have to do this too:
    sudo visudo
    and add
    ALL=(root) NOPASSWD:/usr/bin/gdbserver
    I hope this helps and finds its way to you!

  • @the1stJabneel
    @the1stJabneel 10 ปีที่แล้ว

    Great tutorial!!! with a few minor tweaks I was able to get it working with the BeagleBone Black!!!

    • @kelvinlei4555
      @kelvinlei4555 9 ปีที่แล้ว

      Can you share what some of those minor tweaks are, for future reference. Thanks

  • @Grrizz84
    @Grrizz84 11 ปีที่แล้ว

    Hi Derek great work on the tutorials, makes things alot easier!
    Just a note on the "file not found" error, if your running ubuntu 11.10 you're fine with this tutorial but 12.xx seems to use hard floats (as mentioned in the comments) so if you wnat to follow the tutorial as is use 11.10.
    Also if you get /bin/sh: 1: arm-linux-gnueabi-g++: not found ... Error 127 run "sudo apt-get install gcc-arm-linux-gnueabi" and same for g++-arm-linux-gnueabi.

  • @DerekMolloyatDCU
    @DerekMolloyatDCU  12 ปีที่แล้ว

    Excellent - I will add that to the video Description

  • @airthang
    @airthang 12 ปีที่แล้ว

    Hi,
    I ran this in Code Composer Studio. It's actually not a compiler error but a Codan error. I am not sure what it is right now. The code works.
    Thank Yu-Wen for your answer!

  • @JeffEdlund
    @JeffEdlund 12 ปีที่แล้ว

    Awesome Tutorial!
    I recently got my BeagleBoard up and running on Ubuntu, and plan to use your steps to get my "feet wet". (I'm guessing the char strings to the LED may be a little different, but shouldn't be a problem)
    Again, Well done!

  • @fevzi_yazgan
    @fevzi_yazgan 11 ปีที่แล้ว

    Thanks very usefull. Waiting for more videos.

  • @tcbetka
    @tcbetka 11 ปีที่แล้ว

    In going through these videos again after being away from them for several months, I have found that some paths have been changed in the current Angstrom image (June 2013). For instance, the path to the brightness properties has been changed in the latest version of Angstrom.
    The old path: /sys/class/leds/beaglebone::us­­r3/brightness
    ...is now this: /sys/class/leds/beaglebone:gre­­en:usr3/brightness
    So you have to make the change to get the LED to flash. Check your path to verify.

  • @DerekMolloyatDCU
    @DerekMolloyatDCU  11 ปีที่แล้ว

    You may also have to type "sudo apt-get install g++-arm-linux-gnueabi" also. I'm thinking back and I'm not sure how I didn't have to do this during my video. I have added a note to the video.

  • @tcbetka
    @tcbetka 11 ปีที่แล้ว

    So my advice if this doesn't work for you is to uninstall (and purge) ALL existing versions of gcc- and g++-arm-linux-gnueabi, and just reinstall g++-arm-linux-gnueabi as Derek has shown. It should work perfectly...at least it did for me.
    Thanks Derek!

  • @wallybkg3483
    @wallybkg3483 10 ปีที่แล้ว

    I suspect most everyone who watches this wants to use Eclipse to cross-compile, but if they don't, they can install nano to edit with over ssh instead of using vi. Nano is a more "visual" editor for command mode and much easier to use that vi because of the command "menus" at the bottom of the screen.

  • @DerekMolloyatDCU
    @DerekMolloyatDCU  11 ปีที่แล้ว

    Thanks, I have added a note to the video.

  • @codewarrior7072
    @codewarrior7072 8 หลายเดือนก่อน

    Excellent, thank you!!

  • @TheDogWithTheMan
    @TheDogWithTheMan 11 ปีที่แล้ว

    Yes! got the same problem, the way to fix it is create .dgbinit file in project folder, and add the line "set sysroot /usr/arm-linux-gnueabi/lib/" without quotes. that fixes it.

  • @ralphjones1585
    @ralphjones1585 9 ปีที่แล้ว +2

    For all of the LINUX nubies (me included) if you cannot find the .eclipse folder, it is because it is hidden in the files application. to see hidden files, go to Edit -> Preferences, and check Show hidden and backup files.
    So far, this is a great video - if you need to create a virtual box, you can follow this step by step tutorial: www.brianlinkletter.com/installing-debian-linux-in-a-virtualbox-virtual-machine/

  • @teuluPaul
    @teuluPaul 12 ปีที่แล้ว

    Hi Derek - Great video (from a great series)! Thanks!
    One alternative to opening and closing the file multiple times is fflush():
    if ((LEDHandle = fopen(LEDBrightness, "r+")) != NULL) {
    for (int i = 0; i < 10; i++) {
    fwrite("1", sizeof(char), 1, LEDHandle);
    fflush(LEDHandle);
    sleep(1);
    fwrite("0", sizeof(char), 1, LEDHandle);
    fflush(LEDHandle);
    sleep(1);
    }
    }
    Seems to work here!

  • @TheDogWithTheMan
    @TheDogWithTheMan 11 ปีที่แล้ว

    the problem at 42 minute mark can be fixed by creating .dgbinit file in project folder, and add the line "set sysroot /usr/arm-linux-gnueabi/lib/" without quotes. that fixed it for me, i have BB black running angstrom

  • @joao5000
    @joao5000 11 ปีที่แล้ว

    Hi Derek! I really appreciate your videos. It has been very useful... Thanks! :)
    I've also subscribed your channel.

  • @DerekMolloyatDCU
    @DerekMolloyatDCU  12 ปีที่แล้ว

    Thanks Danny, that is useful to know.

  • @melamrao
    @melamrao 11 ปีที่แล้ว

    that is realy Tutorial.... Verry good. and i thank you.
    Raspberry PI has now no chance with me .. :-)

  • @36Philo
    @36Philo 11 ปีที่แล้ว

    Great Video.. It was really helpful.

  • @DerekMolloyatDCU
    @DerekMolloyatDCU  11 ปีที่แล้ว

    I'm not sure I would recommend a windows setup as it may be difficult to keep the cross development environment up to date. Maybe you could install Linux within Virtualbox under Windows. That is what I am using in the video.

  • @DerekMolloyatDCU
    @DerekMolloyatDCU  12 ปีที่แล้ว

    On my system .eclipse is in my user home account (something like /users/molloyd or /home/molloyd). It contains the configuration files for my instance of eclipse on my account. The idea is that each user on the machine can have their own configuration.

  • @lvlv5232
    @lvlv5232 11 ปีที่แล้ว

    ~42 minutes into the video you show an example of GDB-server crashing when using Step Into command. Even if you sudo when launching the gdb-server the Step Into command crashes, in the video the second time around you use the Step Over so no crash but I think the real reason it crashed the first time is because the Step Into tries to pull debug information for an STL method, debug data is most likely missing from STL library (i.e. not compiled in debug mode). I wish I could buy you a beer :-)

  • @teuluPaul
    @teuluPaul 12 ปีที่แล้ว

    It should be in your home directory (~/.eclipse). You will need to run eclipse for the first time to have this directory and its contents created

  • @hellotop1983
    @hellotop1983 12 ปีที่แล้ว

    Best video.. Thank you so much.

  • @stoka43
    @stoka43 3 ปีที่แล้ว

    Although this tutorial is very old, it is still very helpful. I'm using eclipse 2021 and for some reason I can't see my local machine in RSE.

  • @wambitz
    @wambitz 11 ปีที่แล้ว

    Here it is where I found the solution qt-project/forums/ viewthread/6059, aparently the gcc-arm-4.4-linux-gnueabi didn't work well for me, so if you have the same problem like me there you go. I post it beacuse I spent so many hours looking for the solution, and I really liked the video, it's such a powerful tool !

  • @jacobstockton5041
    @jacobstockton5041 11 ปีที่แล้ว

    Look in the About section of the video. He explains this error.

  • @muilevan
    @muilevan 11 ปีที่แล้ว

    Thank for your sharing!

  • @frodohanks1986
    @frodohanks1986 12 ปีที่แล้ว

    I found it. Thank you!

  • @MrLolztome1
    @MrLolztome1 12 ปีที่แล้ว

    awesome man

  • @JosenivaldoBenitoJunior
    @JosenivaldoBenitoJunior 12 ปีที่แล้ว

    Derek, one more notice: in the first debug example the LED will not blink as you said. However, the error presented by Eclipse has nothing to do with root permission or LED. At the example you used step-in debug which tries to open source code of fopen() and this is not available. At the second run you did a step-over which executes fopen() without showing its source code. If you stepped over at first the code would jump the if due fopen return error but not stopped execution.(no segment. fault)

  • @ashenone5774
    @ashenone5774 11 ปีที่แล้ว

    Thank you for your awesome videos, subscribed! :D

  • @JerrillJohnson
    @JerrillJohnson 11 ปีที่แล้ว

    You should title this video "Remote BeagleBone Debugging with Eclipse" or something... The current title just made me think "g++!" and I skipped it a couple of time before someone else pointed out what gold was in there!

  • @valajbeg
    @valajbeg 11 ปีที่แล้ว

    Thank you, very nice video, although it could be shorter.

  • @JosenivaldoBenitoJunior
    @JosenivaldoBenitoJunior 12 ปีที่แล้ว

    Excellent tutorial Derek. Thanks a lot. About deploying the binary to beagleBone I think it is possible to setup a "run" script into the Eclipse. This script shall execute a sftp transfer (or scp/ssh transfer) than issue a 'ssh user@beaglebone command'. Beaglebone address and command maybe derived from environment variables. I am not expert on Eclipse but this sounds feasible. Thanks again.

  • @DerekMolloyatDCU
    @DerekMolloyatDCU  12 ปีที่แล้ว

    Hi shzishere - a few people are having this problem. Please see the TH-cam video description of this video where I explain how to fix it using compiler arguments or a different cross compiler. Kind regards, Derek.

  • @smgcrysix
    @smgcrysix 11 ปีที่แล้ว

    I used virtualbox to run Ubuntu and likewise followed the video to setup Eclipse on Ubuntu.

  • @tcbetka
    @tcbetka 11 ปีที่แล้ว

    I just installed everything today on Ubuntu 12.04LTS and did exactly what your annotation called out (the line in your post here), and it worked perfectly. I did the apt-get install of g++-arm-linux-gnueabi first, and it also installed gcc-arm-linux-gnueabi as well. Seems to work perfectly, and was MUCH easier than what I had to go through with 12.04 last Fall, for some reason. I think I selected from the (visual) package manager then, and it borked everything. The paths got all screwed up.

  • @greekmovie
    @greekmovie 11 ปีที่แล้ว

    In my case (Ubuntu 12.10, BeagleBoneBlack with Angstrom v2012.12 (Core edition)),
    there was a problem starting remote debugging (architecture error). It turned out that I needed to create a .gdbinit file (in my host filesystem) with the line 'set architecture arm' in it (without the quotes). Then, in Debug Configuration, below the gdb-multiarch text box, there is a GDB command file textbox. I pointed that to the .gdbinit file that I created, and it worked.

  • @electronicwilderness
    @electronicwilderness 12 ปีที่แล้ว

    I had issues with compiling and found that instead of arm-linux-gnueabi-gcc it should have been arm-linux-gnueabi-gcc-4.6 (I guess it is a newer version than the video used).

  • @srkshpdmnbhn
    @srkshpdmnbhn 12 ปีที่แล้ว

    One of the best and most useful tuts, Thank you sir.
    Wanted to point out one issue: On ./helloworldtest after cross compile, I get this: bash: ./helloworldtest: No such file or directory
    Solution: copy ld-linux.so.3 which is located in bb linux under /lib/arm-linux-gnueabihf/ to the upper directory /lib/ as follows:
    ubuntu@omap:/lib/arm-linux-gnu­eabihf$ sudo cp ld-linux.so.3 /lib/

  • @JerrillJohnson
    @JerrillJohnson 11 ปีที่แล้ว

    Just got remote debugging working on the BeagleBone Black with this tutorial. Thank you! That was great! I have an issue trying to build remote projects as well with Indigo. Did you ever resolve that issue?

  • @yan2292008
    @yan2292008 11 ปีที่แล้ว

    thanks for sharing "Derek Molloy"

  • @slashghero
    @slashghero 11 ปีที่แล้ว

    Thank you!!!!

  • @maciejfigwer7051
    @maciejfigwer7051 10 ปีที่แล้ว

    If you are using Debian on BBB (I have BBB rev C), use hard float instead of soft. When I tried soft I was unable to run program on target device.

  • @liangzhang1076
    @liangzhang1076 11 ปีที่แล้ว

    Thanks.

  • @DerekMolloyatDCU
    @DerekMolloyatDCU  11 ปีที่แล้ว

    Go though my video on building a kernel. You don't necessarily have to build the kernel, but it does show how you can deploy a Ubuntu distribution to the BB.

  • @sharpyuk1
    @sharpyuk1 12 ปีที่แล้ว

    I had to install this separately for some reason: sudo apt-get g++-arm-linux-gnueabi - it appears to be working now though, very strange..

  • @afterthought138
    @afterthought138 12 ปีที่แล้ว

    I actually did it several times to make sure I copied you exactly. The only difference is that I downloaded the eclipse version with the c++ tools included automatically and the different version of the cross compiler that I already mentioned.
    The code compiles (with exactly the same console output as in your video) and the executable is [arm/le] and will not run on my development desktop computer. Very strange! Maybe the copy command in the remote plugin is messing up, I will try scp.

  • @TheDogWithTheMan
    @TheDogWithTheMan 11 ปีที่แล้ว

    hey, i figured out a solution, create .dgbinit file and add set architecture arm. that worked for me.

  • @mengjunxie8756
    @mengjunxie8756 11 ปีที่แล้ว

    Hey Derek, thank you so much it is a wonderful video. I want to ask a question. You showed us how to control LED lights by reading files from /sys/class/leds in C++. But what should I do if I want to control other devices on the board in C++? I can't find any official docs from BeagleBone talk about this. Thank you so much for your work and help!

  • @prakashbhanu6958
    @prakashbhanu6958 3 ปีที่แล้ว

    Thanks for the video. Just a clarification. The physical medium for debugging is the Ethernet port only right?

  • @you_dont_know_me_sir
    @you_dont_know_me_sir 9 ปีที่แล้ว

    Hi Derek. Even after watching this video at maximum resolution, I could read all of your commands on terminal. Can you please tell me what did you wrote on terminal between 16:45 and 16:55. You didn't even pronounced it (unlike most other commands, where you did).

  • @craziestmike
    @craziestmike 12 ปีที่แล้ว

    Check your vm network settings, enable bridged mode.

  • @deepapadmanabhan7573
    @deepapadmanabhan7573 9 ปีที่แล้ว

    Thank you.
    Had to add "-mfloat-abi=hard" to get it to run on the beagleboard.
    Followed your link: derekmolloy.ie/beaglebone/setting-up-eclipse-on-the-beaglebone-for-c-development/

  • @MrBodhibrata1
    @MrBodhibrata1 12 ปีที่แล้ว

    Dear Sir,
    I am thankful to you for uploading such a beautiful tutorial.
    While setting the eclipse(as cross compiler for beaglebone arm) i am facing a bit of problem.
    I am doing exactly what is shown in the video. I am running ubuntu12.04 on virtual box.But the executable file that is created by the eclipse is not running in my beagle bone.I copied it to my beagle bone and with chmod changed to executable . But when i execute it it says
    -bash: ./ccc: No such file or directory

  • @tcbetka
    @tcbetka 12 ปีที่แล้ว

    Very nice tutorial Derek. However my build fails here. Despite trying several different versions of g++-arm-linux-gnueabi, I continue to get this error:
    Assembler messages:
    Fatal error: Invalid -march= option: `armv7-a'
    I have Googled for a couple hours tonight, and about the only thing I can find is that somehow my toolchain is pointed at the wrong assembler...I think. But nothing I've tried seems to remedy this problem. Anyone else have this issue?

  • @NGinuity
    @NGinuity 11 ปีที่แล้ว

    I, too, am interested in housing my cross compile environment on Windows. What difficulty would I have keeping the cross development tools up to date? It looks like all of your tools are being installed into Eclipse. Even remote system explorer was a seamless install within Eclipse and I didn't have to do a download to enable it. The only pitfall I have seen is that the Angstrom toolchain comes as a bz2 file and it was a little counterintuitive to unzip it into windows using 7-Zip.

  • @MrMgorgis
    @MrMgorgis 11 ปีที่แล้ว

    Thanks for a great video! what ubuntu are you running on the beaglebone? I'm using the angstrom but would like to flash it with ubuntu. I have the Beaglebone Black

  • @GMVitus
    @GMVitus 12 ปีที่แล้ว

    Hi Derek,
    thanks a lot for your tutorials, they really helped me understand my beaglebone.
    I am currently trying to follow your steps on this one and I am stuck with the first build. Even though all steps were followed, I get the following error:
    /bin/sh: 1: arm-linux-gnueabi-g++: not found
    It looks like a path is not properly set, but I have no clue how to resolve this issue. I hope you can help me out!
    Cheers

  • @alegaultcesta
    @alegaultcesta 9 ปีที่แล้ว

    Worked great for me! Thanks!!
    However, it would be awesome if you can make a video on drivers targeting the BBB Linux Kernel. (ismod command)
    How can I have access to the I/0's of the BBB in this case?

  • @abdulia7578
    @abdulia7578 10 ปีที่แล้ว

    have you tried volatile variable name for the file handle, it could be why the led is not flushed until closing the file, so you dont have to close the file with every access

  • @teuluPaul
    @teuluPaul 12 ปีที่แล้ว

    I was also thinking there was an option to fopen() to have no buffer, so every write passes straight through, but I can't find any detail.
    I tried to format the code in my last reply, but failed - do you know if there is a way to achieve that?
    Last question - what toolset do you use to make the videos - the result is very impressive!