Jump to content

What is status / method for usable linux-headers?


rossbcan

Recommended Posts

Hi Folks;

 

(Tanix TX92) uname -a: Linux aml-s9xxx 5.5.1-aml-s9xxx #trunk SMP PREEMPT Thu Apr 9 17:54:57 EDT 2020 aarch64 aarch64 aarch64 GNU/Linux

 

I need kernel headers to build some out of tree kernel modules such as openvfd but have been stuck for several days.

 

Research / experience has shown that:

- lot of obsolete information - old kernels

- armbian-config fails to install headers

- No correct linux-headers version available for download

- ./compile.sh INSTALL_HEADERS=yes does install headers, but issues (forum search) due to WIREGUARD

- ./compile.sh INSTALL_HEADERS=yes WIREGUARD=no is required for proper headers (still true?)

 

Issues:

- "make ARCH=arm64 scripts" fails due to the tool binaries being x86_64

- "make ARCH=arm64 clean" (attempt to rebuild tool binaries) fails "scripts/Makefile.clean:67: recipe for target 'drivers/gpu/drm/arm' failed"

 

So, how to I get a usable set of kernel-headers?

 

Thanks;

Bill

 

Link to comment
Share on other sites

23 minutes ago, rossbcan said:

Hi Folks;

 

(Tanix TX92) uname -a: Linux aml-s9xxx 5.5.1-aml-s9xxx #trunk SMP PREEMPT Thu Apr 9 17:54:57 EDT 2020 aarch64 aarch64 aarch64 GNU/Linux

 

I need kernel headers to build some out of tree kernel modules such as openvfd but have been stuck for several days.

 

Research / experience has shown that:

- lot of obsolete information - old kernels

- armbian-config fails to install headers

- No correct linux-headers version available for download

- ./compile.sh INSTALL_HEADERS=yes does install headers, but issues (forum search) due to WIREGUARD

- ./compile.sh INSTALL_HEADERS=yes WIREGUARD=no is required for proper headers (still true?)

 

Issues:

- "make ARCH=arm64 scripts" fails due to the tool binaries being x86_64

- "make ARCH=arm64 clean" (attempt to rebuild tool binaries) fails "scripts/Makefile.clean:67: recipe for target 'drivers/gpu/drm/arm' failed"

 

So, how to I get a usable set of kernel-headers?

 

Thanks;

Bill

 

The build you have installed is built from balbes150's fork.  You don't mention which git tree you are working with, but you should be working with https://github.com/150balbes/Build-Armbian

I believe balbes150 just removed the s905xxx targets and consolidated into the generic arm-64 target, so if you use the current head of the git master branch you will be working with newer kernels.  I pulled this code yesterday and built Armbian_20.05.1_Arm-64_bionic_current_5.6.2_desktop.img and in output/debs is the headers package linux-headers-current-arm-64_20.05.1_arm64.deb

It is unlikely that you will be able to rebuild the header package that corresponds to your currently installed build, but you can certainly build a current version with headers for you to work with.

Link to comment
Share on other sites

25 minutes ago, SteeMan said:

Research

 

1 hour ago, rossbcan said:

usable set of kernel-headers?


Such level of support exists only on official Armbian supported hardware. Check download section https://www.armbian.com/download/ Non official builds comes as is.

 

If you want to improve this situation in any way: https://www.armbian.com/get-involved

Link to comment
Share on other sites

Everyone likes to say one word "give" and always for free (all free). Give a new core, and all the functions will work in it. Give support to all the existing equipment in the world and make sure that it turns on automatically, without any settings. Give me a new loader. Give the installation system to eMMC and so that you need to press one button, and better from a mental order. Give full-screen 4K video playback on any shit. Give the perfect job to all the shit that is produced and sold for $ 10-20. Give the source code, and that they would work immediately on the same command and without errors. Give answers to all your questions and be sure to answer everyone personally and in detail. And most importantly, everyone wants it for free and immediately. For everyone who wants to get it-there is a tariff, pay $ 10,000 and you will get full support for your TV box model for 1 year.  B)

Link to comment
Share on other sites

5 minutes ago, balbes150 said:

Everyone likes to say one word "give" and always for free (all free).


Agree! I am sick and tired reading this every fu***** day: "we want Armbian on XXX Please help", "i need instructions how to ..." "do this" There is a forum https://forum.armbian.com/forum/22-board-bring-up/ full of insane demands like "make Armbian on this and that board", but nobody asks themselves how much does this costs and who (will) pay(s) this shit ... !?

 

The other day one come to IRC starting to ask me if I can explain him how TV boxes boots. I said, we don't support that, but he didn't take this as an legit answer. And the more I explained that I don't know and even I knew I would not write manuals because he asked, the more aggressive he got ... he - while abusing my time - accused me (!) for hiding the information about boot processes ... amazing.

 

34 minutes ago, balbes150 said:

For everyone who wants to get it-there is a tariff, pay $ 10,000 and you will get full support for your TV box model for 1 year.


I estimate core crew makes 30-50h every day to keep this project running which means even with 10.000 USD per device we are not covered, but we can at least silence insane wishes and demands.

 

We have to work on this problem properly.

Link to comment
Share on other sites

Gents;

 

I am working from git source: https://github.com/150balbes/Build-Armbian

.. following latest instructions.

 

Repeat Build Options [ ./compile.sh  BOARD=aml-s9xxx BRANCH=current RELEASE=bionic BUILD_MINIMAL=no BUILD_DESKTOP=no KERNEL_ONLY=no KERNEL_CONFIGURE=no  ]

 

It was a simple question: how to use linux-headers from released build system, hoping someone has run into this already.

 

@SteeManappears to suggest if I work with dev as opposed to current, headers may be OK. Maybe so, but hard to get repeatable builds at bleeding edge, so, I will stick with current until dev becomes current+

 

Seem to have hit a hot button, as a taker, not giver. Agree with your sentiments, BUT, I actually submitted a patch for Armbian to get WiFi working:

 

My personal opinion is the Armbian developers have done / are doing a stellar job and, "beggars can't be choosers". With or without help, it is my intent to get openvfd working on Armbian and, contribute back.

 

I KNOW tempers are high these days, definitely not gonna escalate or alienate anyone here. If no help, I will deal with it. I already appreciate what I have - an excellent distribution from @balbes150 et-al.

 

Many Thanks

Regards;

Bill

Link to comment
Share on other sites

42 minutes ago, rossbcan said:

It was a simple question: how to use linux-headers from released build system, hoping someone has run into this already.

 

@SteeManappears to suggest if I work with dev as opposed to current, headers may be OK. Maybe so, but hard to get repeatable builds at bleeding edge, so, I will stick with current until dev becomes current+

Your reply indicates I think a misunderstanding of the status of the Armbian TV Box fork builds (I think we need a better name for these builds).  You mention the "released build system" and that "current" is more stable than "dev".  Those are both incorrect understandings of the current state of the TV box builds. 

 

First off there isn't a "build system" for the builds off of this fork of Armbian.  The builds are simply what balbes150 decides to release to the community for testing.  And the "current" vs "dev" is simply a difference in which kernel tree is being used in the build.  "current" being a significantly patched 5.6ish kernel and "dev" being an unpatched mainline "next" or "rc" tree.

 

These Armbian for TV box fork builds are essentially snapshots of balbes150's development work, some more stable than others less so.  There isn't any formal release management process around them, nor are they reproducible from a specific git tag (if you look at balbes150's Build_armbian github tree there are no tags or branches).  This work is purely the stream of effort that one developer can put into this fork of Armbian.  I don't want to come across as complaining about the current status nor downplay balbes150's efforts.  It is obvious to me that for the continued progress of these efforts, we need to figure out a way for balbes150 to focus on his strengths (moving the development efforts forward), and the rest of us need to step up and do more of the end user support on these forums and work to bring some structured release management to this code base.  The core Armbian team has been focusing on it's release management process recently and I think the results of that effort are great.  Something similar needs to happen here with the TV builds as well, but balbes150 can't do it all by himself.

 

Since I have more time recently (being stuck at home), I am trying to answer more questions on these forums.  But it has taken me almost a year of observing to feel confident in being able to contribute knowledgeable information.  I am also starting to dig into the build system to better understand it with the intention to submit patches that will improve the release management side of things for the TV box builds.   I can't do what balbes150 does for this project, but there are things I can help with, and hopefully I will be able to.

Link to comment
Share on other sites

1 hour ago, rossbcan said:

are doing a stellar job

 

Keep that BS for yourself.

 

1 hour ago, rossbcan said:

no help


What about that work, which you don't see which saved you months or weeks? You only need few more steps to get where you want. And now you want guidance from top skilled people, on which 1000 people also seek help at the same time, who can convert weeks to hours? And why?

Link to comment
Share on other sites

"and why"

 

because this is a "help" forum and, every answered question eliminates it being asked again and contributes to excellence. Just today, my WiFI patch helped two people who didn't have to annoy you by asking.

 

Please keep your "bad day" to yourself and don't call a professional evaluation and thank you for the excellence of Armbian and developers "BS".

Link to comment
Share on other sites

11 hours ago, rossbcan said:

every answered question eliminates it being asked again and contributes to excellence.

 

That would be nice if true, but in reality questions are repeated, doubled, asked again and again by different people - preventing this to happen is yet another cost that is not small. Forum is drifting into unpaid slavery backed technical support service, which is perhaps better to shut down. In such forum creates extreme stress and loss of many hours. Users barely follow forum recommendation or rules. They just show up and expose the problem they have. In waste majority they don't check if the problem was already exposed and they invest nothing to try to resolve their problem on their own before wasting project resources they don't support.

Forum is one thing, while first class support attention with development support is something you simply can't even dare to ask for. Its extremely stressful, cost a lot of energy and is something we are not willing to provide free of charge 24/7. Not just on a bad day, any day.

 

There are just a few that know and do something - and can provide valid answer - while there is a huge illiterate crowd on the other side that are not able even to understand what this forum covers, what Linux is and what we actually do. We can't serve theirs/yours endless hunger. Not for free and not if they/you pay. There are simply not enough resources for such game. Not even close.

 

Users have no clue that solving a problem can take months or years and have very low respect to the open source. They show up three days later with a bump "Is it already fixed". This is happening all the time. Frustration mounts on all sides. On our, "how they can be so stupid to not understand" and we end up "incompetent and not helpful". Ofc they don't even think to donate and make it possible that we can hire perhaps some people to at least answer in our behalf ... No, they will reward us only if we will satisfy them. Which is impossible. And when we will eventually fix that problem in our regular development in several months, they will not come back and say thank you or contribute those 0.5% to their part in the costs - one problem fix can easily costs more then end-users donations we collect in several years. 

 

+ many of problems this forum doesn't wants to have since they have no relationship to our work whatsoever. 

 

We compensate this situation in many ways, but most important is that we don't deal with Raspberry Pi (people). Obviously this is not enough anymore. TV boxes is yet another grey area we need to solve. By talking or by force.

 

11 hours ago, rossbcan said:

Just today, my WiFI patch helped two people who didn't have to annoy you by asking.


True, you helped someone. Can't be denied ... but you didn't help the crew that develop Armbian in any way, contrary. This hardware we don't support nor we support end users development efforts. You didn't ask if we need a help.

Link to comment
Share on other sites

@IgorDo what I do: ignore idiots, "ready, aim, fire" as opposed to "fire, aim, ready" once the target is properly identified as an idiot.

 

Your frustration and all the time / energy you waste is due the ignoring the reality of humanity: 5% criminals, 90% followers (idiots), 5% leaders.

 

Which is best: shutting down the forum because YOU are annoyed with reality, or, ignoring time wasters? Be aware the the corporations / individuals who are able / choose to pay 10K for support do so because of Armbian excellence which is a product of understanding / dealing with / solving issues from a large user (test) base.

 

FACT: you say I am close to solving my stated issue (and, I am, it appears to be an upstream issue, incomplete headers), implying that you see the solution and yet, waste all your time / energy complaining about people who ask questions, assuming ALL (except you) are non-contributors. Would have been better (less effort) to just answer the question so nobody (responsible enough to research) annoys you again.

 

My point is NOT that I am annoyed / insulted by your unfounded opinion regarding me and those who ask questions. My point is to convince you that your frustration is a product of how YOU choose to deal with matters. Sometimes, smart people miss the simplest things, as you have.

Link to comment
Share on other sites

Solved - Can threads be marked "Solved"?
Facts:


- kernel headers appear to be generally incomplete, upstream also. I ran into this exact same error:
https://bugzilla.redhat.com/show_bug.cgi?id=1758710

- lot of obsolete information - old kernels
- armbian-config fails to install headers
- No correct linux-headers version available for download. linux-headers generated by build incomplete, wrong $ARCH.
- ./compile.sh INSTALL_HEADERS=yes does install headers, but issues (forum search) due to WIREGUARD
- ./compile.sh INSTALL_HEADERS=yes WIREGUARD=no is required for proper headers (still true?)
- This is an issue for ALL supported Armbian releases., not just my "unsupported board" (Tanix TX92)


I opted for a brute force solution approach, since any changes I make to the build system, @balbes150 would have a "better" (more informed) solution, should this be treated as the bug it is.


Problems to overcome: (versions, directories may be different for you)
- Incomplete linux-headers: snag from build system and copy to target:


On build system:
cd ~/Build-Armbian/cache/sources/linux-aml-current/5.5 (kernel source dir)
tar -zcvf /mnt/hgfs/Temp/Armbian_20.05.0-trunk_Aml-s9xxx_bionic_current_5.5.1.src.gz .


On target system:
mkdir -p /usr/src/linux-headers-5.5.1-aml-s9xxx/
tar -zxvf -C /usr/src/linux-headers-5.5.1-aml-s9xxx/ /wherever/Armbian_20.05.0-trunk_Aml-s9xxx_bionic_current_5.5.1.src.gz
cd /usr/src/linux-headers-5.5.1-aml-s9xxx


(because tools are wrong $ARCH) In following commands, when fail:
Delete the offending executable and any .o files in same directory. Run command again, deal with next failure until success. make depends will compile any missing files.


make ARCH=arm64 scripts
make ARCH=arm64 defconfig (.config is what last build used)

# Set vermagic so module versions match
make EXTRAVERSION=-aml-s9xxx modules_prepare
make ARCH=arm64 (completely rebuild kernel, as OK test, works for me, takes lotta time)
cd .. (/usr/src)
tar -zcvf /tmp/linux-headers-5.5.1-aml-s9xxx.tar.gz linux-headers-5.5.1-aml-s9xxx  (save updated linux-headers to avoid repeating lengthy process of compiling kernel on target, copy to persistent storage)

 

Do whatever you needed linux-headers for, in my case openvfd


I suggest when the maintainers get around to fixing Armbian linux-headers:
- omit all executable, libraries, kmods and .o files, especially in /scripts
- make sure all required files included


Regards;
Bill

Edited by rossbcan
fix module vermagic
Link to comment
Share on other sites

  • Werner locked this topic
Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines