Hello, thanks a lot the build work now ! 

I'm very proud: this is the 1st time I can help someone on Yocto! This means a 
lot to me ;-) 


<blockquote>


But i have another issue, i would like to install the font in /usr/lib/fonts, 
this is not the case for the moment (it 's for Qt5.7 use). How i can said to 
yocto to install font (.ttf) on this folder please ? 
</blockquote>
I also need to use Qt5.7, but since I'm currently on other tasks, you discover 
the troubles a couple of hours before me. So let's try to debug this together… 
<blockquote>


</blockquote>



1/ File ttf-dejavu_2.37.bb includes (requires) `ttf.inc` that is in the same 
folder. 
2/ File ttf.inc has the following method: 

do_install() { 
install -d ${D}${datadir}/fonts/truetype/ 
find ./ -name '*.tt[cf]' -exec install -m 0644 {} 
${D}${datadir}/fonts/truetype/ \; 
} 


which is in turn appended by dejavu with: 

do_install_append () { 
install -d ${D}${sysconfdir}/fonts/conf.d/ 
install -m 0644 ${WORKDIR}/30-dejavu-aliases.conf 
${D}${sysconfdir}/fonts/conf.d/ 
} 


3/ The log of the install task of the recipe is 
/tmp/work/all-poky-linux/ttf-dejavu/2.37-r7/temp/run.do_install 
We have: 

export datadir="/usr/share" 

export sysconfdir="/etc" 



I compared to my Debian system: the files are stored in the same folders. So it 
seems this is qt that doesn't search in the "correct" place. 


4/ After some grepping in meta-qt5, I have: 



classes/qmake5_paths.bbclass 
OE_QMAKE_PATH_LIBS = "${libdir}" 



classes/qmake5_paths.bbclass 
OE_QMAKE_PATH_QT_FONTS = "${OE_QMAKE_PATH_LIBS}/fonts" 


5/ But I don't know what is the best solution now. We could change the 
OE_QMAKE_PATH_QT_FONTS variable. But this implies to recompile many pieces, I 
believe. 


So I opt for changing the do_install function. The quick & dirty solution is to 
create a ttf-dejavu_2.37.bbappend file that totally redefine the do_install 
method. 




do_install() { 
install -d ${D}${datadir}/fonts/truetype/ 
find ./ -name '*.tt[cf]' -exec install -m 0644 {} ${D}${ libdir 
}/fonts/truetype/ \; 

install -d ${D}${sysconfdir}/fonts/conf.d/ 
install -m 0644 ${WORKDIR}/30-dejavu-aliases.conf 
${D}${sysconfdir}/fonts/conf.d/ 
} 




I can't test it right now, but I hope this helps you. 


Michel 







-- 
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto

Reply via email to