* [meta-fsl-arm] libmcc sysroot issues
@ 2015-01-05 19:12 Petr Kubizňák
2015-01-06 16:00 ` Andy Voltz
2015-01-06 16:32 ` Otavio Salvador
0 siblings, 2 replies; 7+ messages in thread
From: Petr Kubizňák @ 2015-01-05 19:12 UTC (permalink / raw)
To: meta-freescale
[-- Attachment #1: Type: text/plain, Size: 1995 bytes --]
Dear all,
I'm experiencing sysroot issues with the libmcc library on the latest
revision of branch dizzy (2014-12-30, commit
7539a694f3d01f1ab5162bfee16b0327f827c4f7). Not all required files are
populated into the SDK, so the library cannot be further used in the
application development without manually manipulating the sysroot.
First of all, compilation of such application fails on the dependency on
<linux/mvf_sema4.h> include file, coming from <linux/mcc_config.h>. The
mvf_sema4.h file is a part of linux-timesys (3.0.15) kernel (directory
include/linux), and should be located in /usr/include/linux in the SDK
sysroot. I wanted to create a patch, but did not find an automated
solution (as I already described at
https://community.freescale.com/message/466383). This issue is not just
my case, as you can find for example at the following link:
http://developer.toradex.com/how-to/colibri-vf61-real-time-demo-%28xy-pen-plotter%29#Building_the_Qt_User_Interface
Second (after fixing the first issue manually), linking of such
application fails on "-lmcc" flag, as it cannot locate libmcc.so
library. In sysroot's /usr/lib, there is only libmcc.so.1.0, but a
libmcc.so link is missing. After creating the link manually, the
application can build and run as expected.
I would like to ask for a patch of these two issues, or at least for
pointing me to some *brief* resource where I might learn how to create
the patch on myself (i.e. what meta-data say yocto how to generate
sysroots). Sorry, but studying the whole yocto documentation is just too
long run. I spent whole day trying to find a solution with no success.
Best Regards,
Petr
Petr Kubiznak
Embedded SW Developer
ELNICO s.r.o.
Heydukova 2923, 544 01 Dvur Kralove n.L., Czech Republic
T: +420 499 321 019 | M: +420 724 053 668
www.elnico.cz <http://www.elnico.cz/> | www.sqm4.com
<http://www.sqm4.com> | kubiznak.petr@elnico.cz
<mailto:kubiznak.petr@elnico.cz>
[-- Attachment #2: Type: text/html, Size: 2799 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [meta-fsl-arm] libmcc sysroot issues
2015-01-05 19:12 [meta-fsl-arm] libmcc sysroot issues Petr Kubizňák
@ 2015-01-06 16:00 ` Andy Voltz
2015-01-07 14:41 ` Max Krummenacher
2015-01-06 16:32 ` Otavio Salvador
1 sibling, 1 reply; 7+ messages in thread
From: Andy Voltz @ 2015-01-06 16:00 UTC (permalink / raw)
To: Petr Kubizňák; +Cc: meta-freescale@yoctoproject.org, max.oss.09
On Mon, Jan 05, 2015 at 02:12:42PM -0500, Petr Kubizňák wrote:
> I'm experiencing sysroot issues with the libmcc library on the latest revision of branch dizzy (2014-12-30, commit 7539a694f3d01f1ab5162bfee16b0327f827c4f7). Not all required files are populated into the SDK, so the library cannot be further used in the application development without manually manipulating the sysroot.
>
> First of all, compilation of such application fails on the dependency on <linux/mvf_sema4.h> include file, coming from <linux/mcc_config.h>. The mvf_sema4.h file is a part of linux-timesys (3.0.15) kernel (directory include/linux), and should be located in /usr/include/linux in the SDK sysroot. I wanted to create a patch, but did not find an automated solution (as I already described at https://community.freescale.com/message/466383). This issue is not just my case, as you can find for example at the following link: http://developer.toradex.com/how-to/colibri-vf61-real-time-demo-%28xy-pen-plotter%29#Building_the_Qt_User_Interface
>
> Second (after fixing the first issue manually), linking of such application fails on "-lmcc" flag, as it cannot locate libmcc.so library. In sysroot's /usr/lib, there is only libmcc.so.1.0, but a libmcc.so link is missing. After creating the link manually, the application can build and run as expected.
>
> I would like to ask for a patch of these two issues, or at least for pointing me to some *brief* resource where I might learn how to create the patch on myself (i.e. what meta-data say yocto how to generate sysroots). Sorry, but studying the whole yocto documentation is just too long run. I spent whole day trying to find a solution with no success.
>
I'll try a build here to see if I can reproduce the issue you are seeing. Recently this commit b542d3ba472b04fd8759fc34baeda1e7bba31910 addressed some issues with the libmcc install recipes. Copying Max (the commit author) in case this is a familiar issue or perhaps the issue was introduced by that change.
For docs, I recommend starting with the yocto developers guide.
--
Andy Voltz
Timesys Corporation
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [meta-fsl-arm] libmcc sysroot issues
2015-01-06 16:00 ` Andy Voltz
@ 2015-01-07 14:41 ` Max Krummenacher
2015-01-07 15:51 ` Otavio Salvador
0 siblings, 1 reply; 7+ messages in thread
From: Max Krummenacher @ 2015-01-07 14:41 UTC (permalink / raw)
To: Andy Voltz; +Cc: meta-freescale@yoctoproject.org, Petr Kubizňák
Hi
> I'll try a build here to see if I can reproduce the issue you are seeing. Recently this commit b542d3ba472b04fd8759fc34baeda1
e7bba31910 addressed some issues with the libmcc install recipes.
Copying Max (the commit author) in case this is a familiar issue or
perhaps the issue was introduced by that change.
I don't think that the patch which fixes the do_install in dizzy does
contribute to the issues Petr has. I did compare the content installed
in daisy which what is now in dizzy. Now change between the two.
We did address the first issue by adding an include path to the
sysroots /usr/src/kernel. As we used libmcc from a recipe the linker
automatically statically linked libmcc without any bitbake warning or
error output. Probably libmcc.a is by default not populated in an SDK.
Otavio's patches do address the root cause, while our approach is a
cheap workaround.
I will retest with the latest patches from Otavio with real hardware.
Although that will require a day or two.
Regards
Max
2015-01-06 17:00 GMT+01:00 Andy Voltz <andy.voltz@timesys.com>:
> On Mon, Jan 05, 2015 at 02:12:42PM -0500, Petr Kubizňák wrote:
>> I'm experiencing sysroot issues with the libmcc library on the latest revision of branch dizzy (2014-12-30, commit 7539a694f3d01f1ab5162bfee16b0327f827c4f7). Not all required files are populated into the SDK, so the library cannot be further used in the application development without manually manipulating the sysroot.
>>
>> First of all, compilation of such application fails on the dependency on <linux/mvf_sema4.h> include file, coming from <linux/mcc_config.h>. The mvf_sema4.h file is a part of linux-timesys (3.0.15) kernel (directory include/linux), and should be located in /usr/include/linux in the SDK sysroot. I wanted to create a patch, but did not find an automated solution (as I already described at https://community.freescale.com/message/466383). This issue is not just my case, as you can find for example at the following link: http://developer.toradex.com/how-to/colibri-vf61-real-time-demo-%28xy-pen-plotter%29#Building_the_Qt_User_Interface
>>
>> Second (after fixing the first issue manually), linking of such application fails on "-lmcc" flag, as it cannot locate libmcc.so library. In sysroot's /usr/lib, there is only libmcc.so.1.0, but a libmcc.so link is missing. After creating the link manually, the application can build and run as expected.
>>
>> I would like to ask for a patch of these two issues, or at least for pointing me to some *brief* resource where I might learn how to create the patch on myself (i.e. what meta-data say yocto how to generate sysroots). Sorry, but studying the whole yocto documentation is just too long run. I spent whole day trying to find a solution with no success.
>>
>
> I'll try a build here to see if I can reproduce the issue you are seeing. Recently this commit b542d3ba472b04fd8759fc34baeda1e7bba31910 addressed some issues with the libmcc install recipes. Copying Max (the commit author) in case this is a familiar issue or perhaps the issue was introduced by that change.
>
> For docs, I recommend starting with the yocto developers guide.
> --
> Andy Voltz
> Timesys Corporation
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [meta-fsl-arm] libmcc sysroot issues
2015-01-07 14:41 ` Max Krummenacher
@ 2015-01-07 15:51 ` Otavio Salvador
2015-01-07 19:41 ` Max Krummenacher
0 siblings, 1 reply; 7+ messages in thread
From: Otavio Salvador @ 2015-01-07 15:51 UTC (permalink / raw)
To: Max Krummenacher; +Cc: meta-freescale@yoctoproject.org, Petr Kubizňák
On Wed, Jan 7, 2015 at 12:41 PM, Max Krummenacher <max.oss.09@gmail.com> wrote:
>> I'll try a build here to see if I can reproduce the issue you are seeing. Recently this commit b542d3ba472b04fd8759fc34baeda1
> e7bba31910 addressed some issues with the libmcc install recipes.
> Copying Max (the commit author) in case this is a familiar issue or
> perhaps the issue was introduced by that change.
>
> I don't think that the patch which fixes the do_install in dizzy does
> contribute to the issues Petr has. I did compare the content installed
> in daisy which what is now in dizzy. Now change between the two.
Agreed. It is not related.
> We did address the first issue by adding an include path to the
> sysroots /usr/src/kernel. As we used libmcc from a recipe the linker
> automatically statically linked libmcc without any bitbake warning or
> error output. Probably libmcc.a is by default not populated in an SDK.
> Otavio's patches do address the root cause, while our approach is a
> cheap workaround.
I tried to keep the fixes isolated. The linux/version.h issue will be
fixed in OE-Core as yesterday we narrowed down the issue. So I will
drop it in v3 when I send it.
> I will retest with the latest patches from Otavio with real hardware.
> Although that will require a day or two.
Awesome. Please wait for the v3 to do so.
--
Otavio Salvador O.S. Systems
http://www.ossystems.com.br http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854 Mobile: +1 (347) 903-9750
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [meta-fsl-arm] libmcc sysroot issues
2015-01-07 15:51 ` Otavio Salvador
@ 2015-01-07 19:41 ` Max Krummenacher
0 siblings, 0 replies; 7+ messages in thread
From: Max Krummenacher @ 2015-01-07 19:41 UTC (permalink / raw)
To: Otavio Salvador; +Cc: meta-freescale@yoctoproject.org, Petr Kubizňák
2015-01-07 16:51 GMT+01:00 Otavio Salvador <otavio@ossystems.com.br>:
> On Wed, Jan 7, 2015 at 12:41 PM, Max Krummenacher <max.oss.09@gmail.com> wrote:
>> I will retest with the latest patches from Otavio with real hardware.
>> Although that will require a day or two.
>
> Awesome. Please wait for the v3 to do so.
>
I've got your v3 patch series and it is working on the target.
I met one more issue though. The application needs libmcc.so on the
target and does not live with libmcc.so.1.
I will send a patch shortly which sets libmcc's soname.
Regards
Max Krummenacher
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [meta-fsl-arm] libmcc sysroot issues
2015-01-05 19:12 [meta-fsl-arm] libmcc sysroot issues Petr Kubizňák
2015-01-06 16:00 ` Andy Voltz
@ 2015-01-06 16:32 ` Otavio Salvador
2015-01-07 13:46 ` Petr Kubizňák
1 sibling, 1 reply; 7+ messages in thread
From: Otavio Salvador @ 2015-01-06 16:32 UTC (permalink / raw)
To: Petr Kubizňák; +Cc: meta-freescale@yoctoproject.org, Max Krummenacher
Hello,
(added people which may be interested on Cc)
I have prepared a set of patches which I think improves this.
On Mon, Jan 5, 2015 at 5:12 PM, Petr Kubizňák <kubiznak.petr@elnico.cz> wrote:
> I'm experiencing sysroot issues with the libmcc library on the latest
> revision of branch dizzy (2014-12-30, commit
> 7539a694f3d01f1ab5162bfee16b0327f827c4f7). Not all required files are
> populated into the SDK, so the library cannot be further used in the
> application development without manually manipulating the sysroot.
>
> First of all, compilation of such application fails on the dependency on
> <linux/mvf_sema4.h> include file, coming from <linux/mcc_config.h>. The
> mvf_sema4.h file is a part of linux-timesys (3.0.15) kernel (directory
> include/linux), and should be located in /usr/include/linux in the SDK
> sysroot. I wanted to create a patch, but did not find an automated solution
> (as I already described at https://community.freescale.com/message/466383).
> This issue is not just my case, as you can find for example at the following
> link:
> http://developer.toradex.com/how-to/colibri-vf61-real-time-demo-%28xy-pen-plotter%29#Building_the_Qt_User_Interface
Fixed. See below.
> Second (after fixing the first issue manually), linking of such application
> fails on "-lmcc" flag, as it cannot locate libmcc.so library. In sysroot's
> /usr/lib, there is only libmcc.so.1.0, but a libmcc.so link is missing.
> After creating the link manually, the application can build and run as
> expected.
Fixed. See below.
> I would like to ask for a patch of these two issues, or at least for
> pointing me to some *brief* resource where I might learn how to create the
> patch on myself (i.e. what meta-data say yocto how to generate sysroots).
> Sorry, but studying the whole yocto documentation is just too long run. I
> spent whole day trying to find a solution with no success.
I prepared patches for kernel-module-mcc to build fine on master and
also the libmcc symlink issue.
The headers I fixed adding the module headers in the libmcc-dev
rdepends so it is included along the library.
For testing purposes, please check the dizzy-next or master-next
branch and add to your local.conf:
----
TOOLCHAIN_TARGET_TASK_append = ' \
libmcc-dev \
'
----
After that, do:
bitbake core-image-base -c populate_sdk
and this should work fine.
Specially the mcc_config.h change would be good to have Timesys
engineers to comment and ack it. As it may have impact to other users.
--
Otavio Salvador O.S. Systems
http://www.ossystems.com.br http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854 Mobile: +1 (347) 903-9750
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: [meta-fsl-arm] libmcc sysroot issues
2015-01-06 16:32 ` Otavio Salvador
@ 2015-01-07 13:46 ` Petr Kubizňák
0 siblings, 0 replies; 7+ messages in thread
From: Petr Kubizňák @ 2015-01-07 13:46 UTC (permalink / raw)
To: Otavio Salvador; +Cc: meta-freescale@yoctoproject.org, Max Krummenacher
[-- Attachment #1: Type: text/plain, Size: 3154 bytes --]
Hello Otavio,
Thank you for your patches. I rebuilt yocto and my application
afterwards, and would like to confirm successful build.
Best Regards,
Petr
Petr Kubiznak
Embedded SW Developer
ELNICO s.r.o.
Heydukova 2923, 544 01 Dvur Kralove n.L., Czech Republic
T: +420 499 321 019 | M: +420 724 053 668
www.elnico.cz <http://www.elnico.cz/> | www.sqm4.com
<http://www.sqm4.com> | kubiznak.petr@elnico.cz
<mailto:kubiznak.petr@elnico.cz>
On 01/06/2015 05:32 PM, Otavio Salvador wrote:
> Hello,
>
> (added people which may be interested on Cc)
>
> I have prepared a set of patches which I think improves this.
>
> On Mon, Jan 5, 2015 at 5:12 PM, Petr Kubizňák <kubiznak.petr@elnico.cz> wrote:
>> I'm experiencing sysroot issues with the libmcc library on the latest
>> revision of branch dizzy (2014-12-30, commit
>> 7539a694f3d01f1ab5162bfee16b0327f827c4f7). Not all required files are
>> populated into the SDK, so the library cannot be further used in the
>> application development without manually manipulating the sysroot.
>>
>> First of all, compilation of such application fails on the dependency on
>> <linux/mvf_sema4.h> include file, coming from <linux/mcc_config.h>. The
>> mvf_sema4.h file is a part of linux-timesys (3.0.15) kernel (directory
>> include/linux), and should be located in /usr/include/linux in the SDK
>> sysroot. I wanted to create a patch, but did not find an automated solution
>> (as I already described at https://community.freescale.com/message/466383).
>> This issue is not just my case, as you can find for example at the following
>> link:
>> http://developer.toradex.com/how-to/colibri-vf61-real-time-demo-%28xy-pen-plotter%29#Building_the_Qt_User_Interface
> Fixed. See below.
>
>> Second (after fixing the first issue manually), linking of such application
>> fails on "-lmcc" flag, as it cannot locate libmcc.so library. In sysroot's
>> /usr/lib, there is only libmcc.so.1.0, but a libmcc.so link is missing.
>> After creating the link manually, the application can build and run as
>> expected.
> Fixed. See below.
>
>> I would like to ask for a patch of these two issues, or at least for
>> pointing me to some *brief* resource where I might learn how to create the
>> patch on myself (i.e. what meta-data say yocto how to generate sysroots).
>> Sorry, but studying the whole yocto documentation is just too long run. I
>> spent whole day trying to find a solution with no success.
> I prepared patches for kernel-module-mcc to build fine on master and
> also the libmcc symlink issue.
>
> The headers I fixed adding the module headers in the libmcc-dev
> rdepends so it is included along the library.
>
> For testing purposes, please check the dizzy-next or master-next
> branch and add to your local.conf:
>
> ----
> TOOLCHAIN_TARGET_TASK_append = ' \
> libmcc-dev \
> '
> ----
>
> After that, do:
>
> bitbake core-image-base -c populate_sdk
>
> and this should work fine.
>
> Specially the mcc_config.h change would be good to have Timesys
> engineers to comment and ack it. As it may have impact to other users.
>
[-- Attachment #2: Type: text/html, Size: 4364 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2015-01-07 19:41 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-01-05 19:12 [meta-fsl-arm] libmcc sysroot issues Petr Kubizňák
2015-01-06 16:00 ` Andy Voltz
2015-01-07 14:41 ` Max Krummenacher
2015-01-07 15:51 ` Otavio Salvador
2015-01-07 19:41 ` Max Krummenacher
2015-01-06 16:32 ` Otavio Salvador
2015-01-07 13:46 ` Petr Kubizňák
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.