Armbian missibg headers
I I am testing Armbian image for about a month on OPI+. I set up the latest one:Armbian_5.05_Orangepiplus_Debian_jessie_3.4.110.raw
The system runs smoothly so far, so I wanted to test the sources building as it is described from the original documentation:
https://github.com/pvaret/rtl8192cu-fixes
root@orangepiplus:~# apt-get update
root@orangepiplus:~# apt-get install git linux-headers-generic build-essential dkms
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package linux-headers-generic is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'linux-headers-generic' has no installation candidate
If the headers are missing, building from the sources will fail.
Is there a solution, as this is another buid after the one from Loboris, which misses the headers, which will restrict additional applications deployment.
Looking at the Armbian build further, thelinux-headers were included into the image :
root@orangepiplus:~# cd /usr/src/
root@orangepiplus:/usr/src# ls -al
drwxr-xr-x 24 root root 4096 Mar8 20:10 linux-headers-3.4.110-sun8i
But the source build failed nevertheless:
root@orangepiplus:/usr/src/rtl8192# dkms install 8192cu/1.10
Kernel preparation unnecessary for this kernel.Skipping...
Building module:
cleaning build area.....
make KERNELRELEASE=3.4.110-sun8i -C /lib/modules/3.4.110-sun8i/build M=/var/lib/dkms/8192cu/1.10/build......(bad exit status: 2)
Error! Bad return status for module build on kernel: 3.4.110-sun8i (armv7l)
Consult /var/lib/dkms/8192cu/1.10/build/make.log for more information.
root@orangepiplus:/usr/src/rtl8192# tail -100 /var/lib/dkms/8192cu/1.10/build/make.log
DKMS make.log for 8192cu-1.10 for kernel 3.4.110-sun8i (armv7l)
Sun Mar 13 21:41:41 CET 2016
make: Entering directory '/usr/src/linux-headers-3.4.110-sun8i'
LD /var/lib/dkms/8192cu/1.10/build/built-in.o
CC /var/lib/dkms/8192cu/1.10/build/core/rtw_cmd.o
/bin/sh: 1: /usr/src/linux-headers-3.4.110-sun8i/scripts/recordmcount: not found
scripts/Makefile.build:307: recipe for target '/var/lib/dkms/8192cu/1.10/build/core/rtw_cmd.o' failed
make: *** Error 127
Makefile:1367: recipe for target '_module_/var/lib/dkms/8192cu/1.10/build' failed
make: *** Error 2
make: Leaving directory '/usr/src/linux-headers-3.4.110-sun8i' I tried building other sources as following :
root@orangepiplus:/usr/src/ncurses-5.9# wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.9.tar.gz
root@orangepiplus:/usr/src/ncurses-5.9# tar -xzf ncurses-5.9.tar.gz
root@orangepiplus:/usr/src/ncurses-5.9# cd ncurses-5.9
root@orangepiplus:/usr/src/ncurses-5.9/ncurses-5.9# ./configure --host=arm-linux-gnueabi --prefix=/usr/arm-linux-gnueabi CXX="arm-linux-gnueabi-g++"
configure: WARNING: If you wanted to set the --build type, don't use --host.
If a cross compiler is detected then cross compile mode will be used.
checking for egrep... grep -E
Configuring NCURSES 5.9 ABI 5 (Sun Mar 13 21:53:20 CET 2016)
checking build system type... armv7l-unknown-linux-gnueabi
checking host system type... arm-unknown-linux-gnueabi
checking target system type... arm-unknown-linux-gnueabi
Configuring for linux-gnueabi
checking for prefix... /usr/arm-linux-gnueabi
checking for arm-linux-gnueabi-gcc... no
checking for gcc... gcc
....
Appending rules for debug model (c++: ticlib+termlib+ext_tinfo+base+ext_funcs)
creating headers.sh
** Configuration summary for NCURSES 5.9 20110404:
extended funcs: yes
xterm terminfo: xterm-new
bin directory: /usr/arm-linux-gnueabi/bin
lib directory: /usr/arm-linux-gnueabi/lib
include directory: /usr/arm-linux-gnueabi/include/ncurses
man directory: /usr/arm-linux-gnueabi/man
terminfo directory: /usr/arm-linux-gnueabi/share/terminfo
** Include-directory is not in a standard location
root@orangepiplus:/usr/src/ncurses-5.9/ncurses-5.9#
root@orangepiplus:/usr/src/ncurses-5.9/ncurses-5.9# make
... IOSTREAM_NAMESPACE 0
cd ../objects;arm-linux-gnueabi-g++ -I../c++ -I../include -I. -DHAVE_CONFIG_H-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64-DNDEBUG -I. -I../include -I/usr/arm-linux-gnueabi/include/ncurses-c ../c++/cursesf.cc
/bin/sh: 1: arm-linux-gnueabi-g++: not found
Makefile:329: recipe for target '../objects/cursesf.o' failed
make: *** [../objects/cursesf.o] Error 127
make: Leaving directory '/usr/src/ncurses-5.9/ncurses-5.9/c++'
Makefile:109: recipe for target 'all' failed
make: *** Error 2
You tried to compile 8192cu and the line /bin/sh: 1: /usr/src/linux-headers-3.4.110-sun8i/scripts/recordmcount: not found tells all you need to know: go to /usr/src/linux-headers-3.4.110-sun8i and do make scripts which will make recordmcount and friends. Though, I don't understand why you wanna do that since the driver is already included in Armbian.
As for ncurses:
./configure --host=arm-linux-gnueabi --prefix=/usr/arm-linux-gnueabi CXX="arm-linux-gnueabi-g++"
Are you trying to cross-compile or are you compiling on the device itself? If you are compiling natively on the device itself then why are you calling it as if you were trying to cross-compile? That's obviously going to fail; when compiling natively you would just call it with ./configure --prefix=/usr/arm-linux-gnueabi
Sometimes you should read the error-messages you are getting, you know. Thanks for the prompts.
>Are you trying to cross-compile or are you compiling on the device itself?
I was trying to compile on device itself.
>If you are compiling natively on the device itself then why are you calling it as if you were trying to cross-compile?
ARM is a new architecture for me so far. I am trying to understand the way it works.
>That's obviously going to fail; when compiling natively you would just call it with
I haven't yet tried it, but will give it another look this WE.
The goal is to build an Asterisk application. Your best bet is to ask on Armbian forum, where Armbian devs could help you.
page:
[1]