NI Linux Real-Time Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

A more recent libc6?

Hi,

I would like to install some additional software (using opkg) but I am locked due to dependancies to libc6 >= v2.12 (this dependancy is quite common in the "next" version repository). On the Angstrom distro it seems the standard version is 2.11.1

Is it possible to get a newer version of the BSP including libc6 >= 2.12?

Regards,

Seb

0 Kudos
Message 1 of 10
(5,265 Views)

Hi Seb,

It is possible to remove the hold on libc via the "opkg flag" command, but I do not recommend it. The LabVIEW RIO software stack has been thoroughly tested against the specific version of libc, and may not behave properly (or work at all) if a different version is used.

I recommend that when installing the additional software that you ignore dependency errors by passing the –force-depends flag and see if the additional software still works for you.

Michael

--
Michael P
National Instruments
0 Kudos
Message 2 of 10
(4,235 Views)

Hi Michael,

Thanks for your message.

I already knew how to deal with opkg using the flag option; in fact I already fixed this issue compiling libc 2.12 manually and it seems to work up to now with current NI package.

Nevertheless my concern is exactly the same as the one you mentioned 😉

It was more oriented regarding the NI software stack and its own dependencies on standard libs (provided by angstrom distro or compile manually). That's why I was more concerned about a BSP support (with an up-to-date libc) rather than just fixing it by my own.

Another way could be to get NI software packages as standard packages (as an external tarball or even better as a NI repository), and then let users made the dependancy tests for their own software after a formal user approval.

This question is "lib oriented" but I will ask a more general question about NI stack dependancies and angstrom distribution at NI Week!


Regards,

Seb

0 Kudos
Message 3 of 10
(4,235 Views)

Hi everybody,

I face the same pb with libc6 and it is really a bit disturbing (anoying?) to see that neither NI nor Yocto/OE/angstrom is able to provide past compiled packages to maintain a snapshot/repository for a particular BSP ...

I fully understand NI's policy to make throughout testings but please, provide the minimum data/info to play with the angstrom feeds , and update the tutorial that says for exemple to install pgsql 😉

I really need to install openssl, cacao (for perfs comparison) and gcc on my target,

so, what's NI solution for this dependancy issue?

thank you for your help

Eric

0 Kudos
Message 4 of 10
(4,235 Views)

Lapp1,

I can appreciate your concern, but the external-to-NI repositories and opkg itself were not something that NI planned to ensure its continued functionality, it was simply something nice for those who are more familiar with embedded linux systems. Additionally, NI cannot foist upon external companies/entities the need to maintain the availability of the repositories.

That said, there are plenty of resources online about how to change/enable/use opkg repositories. Google is your friend (when it's not spying on you for the NSA)

0 Kudos
Message 5 of 10
(4,235 Views)

thanks Brad for your reply,

as Seb, I believe I'm used to use opkg's options and like him, I'm more concerned about having something clean "by BSP" rather than trying to manipulate files that can tear other NI files off !

besides, afaik that's not an opkg pb .. when the feeds link points to the "next" branch instead of a fixed (dated) one... obvioulsy that should have raised some day 😉

I understand that if I buildroot a new BSP from sratch with the "next" branch, NI won't suppor it, ok,

yet, does this mean that we will get stucked to this 2.11.1-r7 libc6 BSP and be on our own for finding external feeds that provides pakages built agains it ?

cheers

Eric

0 Kudos
Message 6 of 10
(4,235 Views)

Lapp1,

Considering opkg is offered as a nicety, if it were me I would find an appropriate opkg feed that has the packages you want and built against the version of libc6 that you care about. Now, if you really don't care about the version of libc6 other than the fact that it is hindering installation of other packages, there are ways around the phony "requirement" of at least libc6 ≥2.12, I have done plenty of testing with packages that claim this dependency but work perfectly fine with the installed libc6. The only exceptions that I've found are GDB and GCC.

0 Kudos
Message 7 of 10
(4,235 Views)

Brad,

thanks for this,

you're perfectly right.

the gcc didn't even install correctly as I was not able to find any make or gcc binary afterwards 😉

cheers

0 Kudos
Message 8 of 10
(4,235 Views)

Lapp1,

Basically, you're going to need to find an opkg feed that has the packages that you want, allow libc6 to be updated, and install whatever packages the feed has decided to slice the tools into (for example, on the outdated next feed, it was task-sdk-native that included everything in one go that would give you, amongst other things, a working gcc).

Note, once again, this is not supported by National Instruments, but in unofficial testing I haven't noticed any major issues

0 Kudos
Message 9 of 10
(4,235 Views)

A complete build/deployment environment, which can fully automatically build everything from scratch and is easy to customize, would be very helpful here:

 

https://forums.ni.com/t5/Additional-NI-Software-Idea/cRIO-image-development-kit/idc-p/3820247

Linux Embedded / Kernel Hacker / BSP / Driver development / Systems engineering
0 Kudos
Message 10 of 10
(3,249 Views)