undefined reference problem persists
Alexander Kanavin
On Mon, 7 Nov 2022 at 18:57, Ron Eggler <ron.eggler@...> wrote:
Then your best option is to drop meta-gplv2 layer from builds altogether. This will update everything to current, compatible versions that are easier to fix if needed. Just to be on the safe side, you do need to find out why it was added though. The reason may still hold. Alex |
|
On 2022-11-07 7:20 a.m., Alexander
Kanavin wrote:
Exactly, the customer will have full access to the source code incl. the complete set of Yocto layers and all.On Mon, 7 Nov 2022 at 16:13, Ron Eggler <ron.eggler@...> wrote:Are you able to fulfil that obligation you have under the license?Yes, that will definitely be doable for the recepient if they chose to do so.I'm curious as to how though. Are you going to give them a complete set of yocto layers and source code for everything that goes into the image, so that they can replicate the yocto build? If they choose to replace readline with their own version, I don't see any other way. Yes, understood!Note that we are not talking about the manufacturer of the device, we are talking about the actual end users who will buy and use the device for its intended purpose. |
|
Alexander Kanavin
On Mon, 7 Nov 2022 at 16:13, Ron Eggler <ron.eggler@...> wrote:
I'm curious as to how though. Are you going to give them a completeAre you able to fulfil that obligation you have under the license?Yes, that will definitely be doable for the recepient if they chose to set of yocto layers and source code for everything that goes into the image, so that they can replicate the yocto build? If they choose to replace readline with their own version, I don't see any other way. Note that we are not talking about the manufacturer of the device, we are talking about the actual end users who will buy and use the device for its intended purpose. Alex |
|
On 11/7/22 00:27, Alexander Kanavin wrote:
On Mon, 7 Nov 2022 at 02:35, Ron Eggler <ron.eggler@...> wrote:Yes, that will definitely be doable for the recepient if they chose to do so.If you're shipping anything that is under gplv3 you also need to giveAre you going to ship what you're working on to other users, or is itThe intent is, that's it's going to be shipped (but with full access to -- Ron |
|
Alexander Kanavin
On Mon, 7 Nov 2022 at 03:19, Ron Eggler <ron.eggler@...> wrote:
Combining gpl2 and gpl3 is not an issue here. The issue is that if youOn Sun, 6 Nov 2022 at 18:36, Mistyron <ron.eggler@...> wrote:https://www.gnu.org/licenses/rms-why-gplv3.en.html specifies:I'll attempt to "just drop" meta-gplv2, then. However I see that there are other dependencies on readline too, i.e. it might be easier to just replace the existing 5.2 version in meta-gplv2 with 8.2 from here: https://git.yoctoproject.org/poky/plain/meta/recipes-core/readline/No. You cannot 'just replace' it, as they are under different ship gpl3 items to users as a part of some product, you have an obligation to allow them to change those items and install the changes on the product. This is why meta-gplv2 was created: it effectively reverts everything that is nowadays gpl3 licensed to older versions which are still under gpl2. Single program is commonly interpreted as a runtime process with its own virtual address space. E.g. all linked libraries, even 3rd party ones, are a part of the single program. Alex |
|
Alexander Kanavin
On Mon, 7 Nov 2022 at 02:35, Ron Eggler <ron.eggler@...> wrote:
If you're shipping anything that is under gplv3 you also need to giveAre you going to ship what you're working on to other users, or is itThe intent is, that's it's going to be shipped (but with full access to the recipient users a possibility to change the item under gplv3 from the source code you have used to build it and install their modified version to replace yours. Are you able to fulfil that obligation you have under the license? Alex |
|
On 11/6/22 18:30, Mistyron via lists.yoctoproject.org wrote:
I replaced replaced readline with libedit in meta-gplv2/recipes-support/gnupg/gnupg_1.4.7.bb, invoked bitbake and got: | /home/yocto/rzv_vlp_v3.0.0/build/tmp/work/aarch64-poky-linux/lrd-networkmanager-sterling/10.4.0.10-r0/recipe-sysroot-native/usr/bin/aarch64-poky-linux/../../libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/8.3.0/ar: `u' modifier ignored since `D' is the default (see `U') | aarch64-poky-linux-libtool: link: aarch64-poky-linux-gcc-ranlib src/core/.libs/libNetworkManager.a | aarch64-poky-linux-libtool: link: rm -fr src/core/.libs/libNetworkManager.lax | aarch64-poky-linux-libtool: link: ( cd "src/core/.libs" && rm -f "libNetworkManager.la" && ln -s "../libNetworkManager.la" "libNetworkManager.la" ) | make[2]: Leaving directory '/home/yocto/rzv_vlp_v3.0.0/build/tmp/work/aarch64-poky-linux/lrd-networkmanager-sterling/10.4.0.10-r0/build' | make[1]: *** [Makefile:18508: all-recursive] Error 1 | make[1]: Leaving directory '/home/yocto/rzv_vlp_v3.0.0/build/tmp/work/aarch64-poky-linux/lrd-networkmanager-sterling/10.4.0.10-r0/build' | make: *** [Makefile:8521: all] Error 2 | ERROR: oe_runmake failed | WARNING: exit code 1 from a shell command. | ERROR: Execution of '/home/yocto/rzv_vlp_v3.0.0/build/tmp/work/aarch64-poky-linux/lrd-networkmanager-sterling/10.4.0.10-r0/temp/run.do_compile.78849' failed with exit code 1 ERROR: Task (/home/yocto/rzv_vlp_v3.0.0/build/../meta-mistylwb5p/meta-laird-cp-pre-3.4/recipes-packages/lrd-networkmanager/lrd-networkmanager-sterling.bb:do_compile) failed with exit code '1' NOTE: Tasks Summary: Attempted 3706 tasks of which 3702 didn't need to be rerun and 1 failed. Summary: 1 task failed: /home/yocto/rzv_vlp_v3.0.0/build/../meta-mistylwb5p/meta-laird-cp-pre-3.4/recipes-packages/lrd-networkmanager/lrd-networkmanager-sterling.bb:do_compile Summary: There were 4 WARNING messages shown. Summary: There were 7 ERROR messages shown, returning a non-zero exit code. yocto@933e43234703:~/rzv_vlp_v3.0.0/build$ And I have troubles to decode what exactly is causing the error in libNetworkManager.a - can anyone help me to shed some light onto this? I'm not sure about how to fix the the `u' modifier problem either nor do I know what it really means. -- Ron |
|
On 11/6/22 18:16, Khem Raj wrote:
On Sun, Nov 6, 2022 at 5:00 PM Khem Raj <raj.khem@...> wrote:libedit is the editline library under meta-devtools: https://git.yoctoproject.org/poky/plain/meta/recipes-devtools/libedit/On Sun, Nov 6, 2022 at 8:02 AM Mistyron <ron.eggler@...> wrote:I should have said libedit and not editlineOn 11/6/22 02:26, Anders Montonen wrote:you can also look into replacing readline with editline and see ifOn 6 Nov 2022, at 9:45, Mistyron <ron.eggler@...> wrote:I see, yes my project is using "meta-gplv2".Hi,Are you using meta-gplv2? That function doesn’t exist yet in the version of readline provided by that layer. I'll give this a shot! --Thanks! RON EGGLER Firmware Engineer (he/him/his) www.mistywest.com |
|
On 11/6/22 10:12, Alexander Kanavin wrote:
On Sun, 6 Nov 2022 at 18:36, Mistyron <ron.eggler@...> wrote:https://www.gnu.org/licenses/rms-why-gplv3.en.html specifies:I'll attempt to "just drop" meta-gplv2, then. However I see that there are other dependencies on readline too, i.e. it might be easier to just replace the existing 5.2 version in meta-gplv2 with 8.2 from here: https://git.yoctoproject.org/poky/plain/meta/recipes-core/readline/No. You cannot 'just replace' it, as they are under different "When we say that GPLv2 and GPLv3 are incompatible, it means there is no legal way to combine code under GPLv2 with code under GPLv3 in a single program." - What is a single program though? Readline would still be a single program within the bitbake build, would it not? I'm not "stealing" nor editing its code but compile it as is. -- RON EGGLER Firmware Engineer (he/him/his) www.mistywest.com |
|
On Sun, Nov 6, 2022 at 5:00 PM Khem Raj <raj.khem@...> wrote:
I should have said libedit and not editline Thanks! |
|
On 11/6/22 10:12, Alexander Kanavin wrote:
On Sun, 6 Nov 2022 at 18:36, Mistyron <ron.eggler@...> wrote:The intent is, that's it's going to be shipped (but with full access to the sources)I'll attempt to "just drop" meta-gplv2, then. However I see that there are other dependencies on readline too, i.e. it might be easier to just replace the existing 5.2 version in meta-gplv2 with 8.2 from here: https://git.yoctoproject.org/poky/plain/meta/recipes-core/readline/No. You cannot 'just replace' it, as they are under different -- Ron |
|
On Sun, Nov 6, 2022 at 8:02 AM Mistyron <ron.eggler@...> wrote:
you can also look into replacing readline with editline and see if this would work for your package needs. That will be one less package needed from meta-gpl2 Thanks! |
|
Alexander Kanavin
On Sun, 6 Nov 2022 at 18:36, Mistyron <ron.eggler@...> wrote:
I'll attempt to "just drop" meta-gplv2, then. However I see that there are other dependencies on readline too, i.e. it might be easier to just replace the existing 5.2 version in meta-gplv2 with 8.2 from here: https://git.yoctoproject.org/poky/plain/meta/recipes-core/readline/No. You cannot 'just replace' it, as they are under different licenses, and meta-gplv2 specifically collects versions under gpl version 2 only. Are you going to ship what you're working on to other users, or is it just experimentation? Alex |
|
Hi, On 11/6/22 08:48, Anders Montonen
wrote:
Hi,I'll attempt to "just drop" meta-gplv2, then. However I see that there are other dependencies on readline too, i.e. it might be easier to just replace the existing 5.2 version in meta-gplv2 with 8.2 from here: https://git.yoctoproject.org/poky/plain/meta/recipes-core/readline/
I need nmcli for configuration purposes, disabling it won't work
for me. Thanks, |
|
Alexander Kanavin
On Sun, 6 Nov 2022 at 17:48, Anders Montonen <Anders.Montonen@...> wrote:
If your project doesn’t have any special requirements about not using (L)GPLv3-licensed packages, then dropping meta-gplv2 is by far the best option.I can imagine that meta-gpl2 was in fact added in the first place for exactly that reason. NM is a red hat project, and red hat has no concerns for those pesky embedded linux needs. There's no configuration switch to disable readline specifically. I vaguely remember that in a similar situation I disabled nmcli/tui for the product images but kept them in developer images. Updating readline to a gpl3 licensed version is not an option at all, as it would result in a product that you cannot ship. Alex |
|
Anders Montonen
Hi,
The dependency on readline comes from Networkmanager’s user interfaces (nmcli, nmtui). If you can live without them, disabling them is also an alternative. Regards, Anders |
|
On 11/6/22 02:26, Anders Montonen wrote:
On 6 Nov 2022, at 9:45, Mistyron <ron.eggler@...> wrote:I see, yes my project is using "meta-gplv2".Hi,Are you using meta-gplv2? That function doesn’t exist yet in the version of readline provided by that layer. Should removal of that layer help, or would you recommend that I update the readline version within it to the latest? (and provide an upstream patch to: https://github.com/lgirdk/meta-gplv2 ? Thanks! Ron |
|
On 11/6/22 01:40, Markus Volk wrote:
rl_echo_signal_char is a symbol from readline per
https://tiswww.case.edu/php/chet/readline/readline.html |
|
On 11/6/22 01:14, Alexander Kanavin
wrote:
Okay, yes, sorry about that, the compile output for bitbake sample-image-cp-lwb5plus looks like: ... 4.0.10-r0/laird-backport-10.4.0.10/net/bluetooth/bluetooth.o
DESCRIPTION = "Sterling LWB5+ SDIO/UART M.2 (diversity antenna)
sample image"
|
|
Anders Montonen
On 6 Nov 2022, at 9:45, Mistyron <ron.eggler@...> wrote:
Are you using meta-gplv2? That function doesn’t exist yet in the version of readline provided by that layer. Regards, Anders |
|