Oh No!!! Did I brick my board?

Oh No!!!

I’ve been trying to cross-compile from my PC (running Debian Jessie) to my BBB.
Simple cross-compiling worked fine.

Then I was trying to cross-compile openCV.
After building and then trying to run on the BBB, I had some problems.
First, the versions of openCV libraries didn’t match, so I copied over the ones I built on my PC to the BBB.
That fixed that problem.

Then, it was complaining that some basic GCC libraries weren’t the right version.
So…
I copied all the contents of arm-linux-gnueabihf from my PC to the BBB.

After that, even simple things like “ls” won’t work.

Am I completely hosed?
Do I need to re-install the image?

HELLLP!

Also, once I get back up and going, what’s the root cause of my library problem, and what’s the right way to solve it?

Debian Wheezy (7.x) uses libc 2.13 and the gnueabihf eabi, so you
externally built opencv with the wrong libc, then trashed /lib/....

Based on what you are doing, you should reflash with jessie (8.x),
which has a much newer version of libc 2.19.

Regards,

Thanks for the reply.
Sorry for the dumb questions to follow, but I want to make sure I understand your response.

Is the latest BBB image Debian Wheezy?
If so, then I understand your answer.

Is there anything special in the BBB Debian image that I’d be missing by creating an ARM Debian Jessie image?
Thanks again!

I guess I answered my own question with regard to the BBB version being Wheezy.

However, is there anything special about the build for BBB?
If I grab the official Debian Jessie armhf image, will it work properly on BBB hardware?

Debian's official "Jessie" image should "boot" on the BBB just fine.

Infact, that's an option with beagleboard.org's Debian Jessie image's..

http://elinux.org/Beagleboard:BeagleBoneBlack_Debian#Debian_8:_jessie

Debian 8: jessie

sudo apt-get install linux-image-armmp
sudo reboot

Regards,

I think I’m in pretty bad shape now.
After power cycling the BBB, I can’t get it to boot at all.
I’ve tried downloading an image to an SD card, but no luck.

I was able to restore from microSD…had to boot from microSD, mount the eMMC and edit /boot/uEnv.txt, then flash it.
I did that with Wheezy.

Now that I’m booting Wheezy, I should be able to update to Jessie.
Thanks for the guidance…hopefully I’ve learned my lesson :wink:

One last question.
I can’t seem to get Jessie.

sudo apt-get update

and when that was done:

sudo apt-get install linux-image-armmp

But I get:
E: Unable to locate package linux-image-armmp

Two questions:

  1. Any idea why it can’t locate it?
  2. Is there a way to get that image in an img file?

http://elinux.org/Beagleboard:BeagleBoneBlack_Debian#Debian_Releases

Thanks…I’m familiar with that page.
However, the only links for Jessie img files are “Testing Snapshots”.

Would these be the same as the official release (as far as libraries…I want to make sure I can cross compile openCV)?
Is the image I’d get with “sudo apt-get install linux-image-armmp” the same as one of these snapshots, or is it an official release?
If it’s official, and if I updated with one of those img files, could I then install as above?

And finally, is there a reason why I can’t locate the image with “sudo apt-get install linux-image-armmp” ?

Yes, I just tried this. Updated /etc/apt/sources.list to make sure the Debian repositories were listed (had Ubuntu installed), but it still failed to locate the package.

Thanks...I'm familiar with that page.
However, the only links for Jessie img files are "Testing Snapshots".

They are only labled "Testing" as beagleboard.org has't moved them to
the "release" directory on their server. :wink:

Would these be the same as the official release (as far as libraries...I
want to make sure I can cross compile openCV)?
Is the image I'd get with "sudo apt-get install linux-image-armmp" the same
as one of these snapshots, or is it an official release?
If it's official, and if I updated with one of those img files, could I then
install as above?

And finally, is there a reason why I can't locate the image with "sudo
apt-get install linux-image-armmp" ?

It's a "jessie+" only kernel

Regards,

Thanks everyone for the answers.
One final question:

What I’m ultimately trying to accomplish is developing a custom app w/ openCV in Eclipse on a PC.
And cross-compiling for the BBB.

From what I understand (from Derek Molloy), getting emdebian, cross-compiling, and openCV working on Wheezy is much more difficult than on Jessie.
That’s why I chose Jessie for my VM on my PC.

However, there’s no bone Jessie yet (if I understand everyone’s help so far).

So, are my only options:

  1. Put a Wheezy VM on my PC and try to muddle through the setup?
  2. Wait for a full bone Jessie?

Any other advice would be greatly appreciated.

Umm, can you be a little more specific.. What exactly are you waiting
for from Jessie image's?

As they are 100% feature compatible..

Regards,

Sorry…can you tell I’m a Linux noob?

I want to make sure all the armhf libraries are the exact same version, so that I don’t get link issues.

If you have jessie on your development platform, install jessie on the bbb.

On your x86, (with jessie) you can install *.armhf packages/libraries via;

sudo dpkg --add-architecture armhf
sudo apt-get update

This will allow you to build against the exact same lib's on the bbb..

Then install cross-gcc-dv

https://packages.debian.org/jessie/cross-gcc-dev

Which will help you install a matching gcc arm cross compiler. (i
haven't had a chance to do this personally)

Regards,

The last Jessie I tried (sometime in April I think) I couldn’t get GPIO pins to respond with the sample code and went back to Wheezy.

Which one would be best to upgrade to at this time?

Jessie 6/15 or 6/17 flasher-4GB

Doesn't matter..

If you want the exact same setup as 'wheezy' you downgrade the kernel

sudo apt-get update
sudo apt-get install linux-image-3.8.13-bone72
sudo reboot

Or if you want the 3.14 branch from ti:
sudo apt-get install linux-image-3.14.43-ti-r68

Or if you want the new "overlay" branch, (the one that's going to replace 3.8.)
sudo apt-get install linux-image-4.1.0-bone9

This is all documented here:

http://elinux.org/Beagleboard:BeagleBoneBlack_Debian#Kernel_Options

Regards,

I’m still fighting version issues and have a couple more questions.

I put the latest Jessie on my BBB.
It comes with openCV already.
However, it’s not the latest openCV (2.4 vs. 3.0).
So, what I cross-compiled and built on my linux PC (3.0) still didn’t match what was on the BBB.

No big deal…now that both the PC and BBB were running Jessie, I just copied the 3.0 openCV libraries from the PC to the BBB.
That was great, except…
For some reason I can’t possibly understand, there are about 5 openCV libraries that just aren’t a part of 3.0 that were a part of 2.4.
They’re just not there.

Any reason why BBB Jessie wouldn’t be using the latest 3.0 opencv?
Would the best solution be to just download, build, and install the 2.4 version on my PC?

I'm still fighting version issues and have a couple more questions.

I put the latest Jessie on my BBB.
It comes with openCV already.
However, it's not the latest openCV (2.4 vs. 3.0).
So, what I cross-compiled and built on my linux PC (3.0) still didn't match
what was on the BBB.

No big deal...now that both the PC and BBB were running Jessie, I just
copied the 3.0 openCV libraries from the PC to the BBB.
That was great, except...
For some reason I can't possibly understand, there are about 5 openCV
libraries that just aren't a part of 3.0 that were a part of 2.4.
They're just not there.

Any reason why BBB Jessie wouldn't be using the latest 3.0 opencv?

Jessie was released on April 26th, 2015, the version of opencv had
been frozen the previous november, so it has 2.4..

btw, there doesn't seem to be a push to get 3.0 in sid/testing either:

https://packages.qa.debian.org/o/opencv.html

Would the best solution be to just download, build, and install the 2.4
version on my PC?

Regards,