TI E2E Community
Sitara Processors Forum
how to build a kernel for beaglebone from scratch?
I go through the forum, did not find answer about this.
I am using arm-linux-gnueabi to try to build a kernel for beaglebone. I get the source from git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-oamp.git. The system boot and stopped after loading the kernel.
Can anyone tell me what kernel source I need to use?
I would recommend you try the kernel from the Sitara Linux SDK at http://software-dl.ti.com/dsps/dsps_public_sw/am_bu/sdk/AM335xSDK/latest/index_FDS.html.
There is also a GCC toolchain in that SDK
I did download and install the TI SDK system.
Then I setup the environment and make the kernel with the GCC cross tool come with it. I have a compaining of shared library libz.so.1. How can I build this or get from somewhere?
> [linux-devkit]:/local/jyu3-build/arm/ti-sdk-am335x-evm-05.04.01.00/board-support/linux-3.2-psp04.06.00.07.sdk> make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- uImage
> CHK include/linux/version.h
> CHK include/generated/utsrelease.h
> make: `include/generated/mach-types.h' is up to date.
> CC kernel/bounds.s
> ./libexec/gcc/arm-arago-linux-gnueabi/4.5.3/cc1: error while loading
> shared libraries: libz.so.1: cannot open shared object file: No such
> file or directory
> make: *** [kernel/bounds.s] Error 1
> make: *** [prepare0] Error 2
Never mind, I found it.
It also looks like you sourced the environment-setup script. You do NOT want to do that when building the kernel because it will cause some of the host tools the kernel uses to be cross-compiled for the ARM instead.
I still have the same complain from the compiler.
I tried to guess to set the library path EXTRALDFLAGS := /linux-devkit/arm-arago-linux-gnueabi/usr/lib in file /script/Makefile.build
It still failed to find the libz.so.1 in /linux-devkit/arm-arago-linux-gnueabi/usr/lib . can you tell me what I am missing?
It turns out I have 64bit machine, I am missing 32bit library lib32lz.1
Now it compiles.
Now the system is up with the kernel and u-boot I built based on your source. Thank you!
Do you have a git site I can directly get the kernel and u-boot source without all the install things?
Also can I disable the power management unit. What is the purpose of am335x-pm-firmware.bin?
run into the same problem. Where I cn get this lib32lz.1 library?
Thanks in advance
Sorry for the typo. You should install the lib32z1 library in your machine. For Debian I use apt-get to install it.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.