**** BEGIN LOGGING AT Sat Mar 14 02:59:59 2015 Mar 14 18:05:01 Hi folks! Mar 14 18:05:46 I'm writing a recipe for a node-serialport, but I'm having problem with QA , someone could help me? Mar 14 18:06:49 when I build the recipe this warning is displayed "WARNING: QA Issue: node-serialport requires /bin/bash, /bin/zsh, but no providers in its RDEPENDS [file-rdeps]" Mar 14 18:07:19 this occurs because I'm using cp -r /path /path_target in my recipe Mar 14 18:07:37 cp -r ${S}/build/* ${D}${libdir}/node_modules/serialport/build/ Mar 14 18:07:52 cp -r ${S}/node_modules/* ${D}${libdir}/node_modules Mar 14 18:16:04 do you have an rdepends for a shell package? Mar 14 18:40:55 nerdboy I'm trying to add RDEPENDS_${PN} += "bash" Mar 14 18:41:04 the zsh is in the blacklist Mar 14 18:41:43 after add the RDEPENDS Mar 14 18:41:44 WARNING: QA Issue: node-serialport requires /bin/zsh, but no providers in its RDEPENDS [file-rdeps] Mar 14 18:42:44 wth? Mar 14 18:42:53 the recipe Mar 14 18:42:53 http://pastebin.com/n7505wwV Mar 14 18:42:58 does zsh appear anywhere Mar 14 18:43:00 ? Mar 14 18:43:03 no Mar 14 18:43:28 this occur when I try to copy a folder Mar 14 18:43:34 cp -r ${S}/build/* ${D}${libdir}/node_modules/serialport/build/ Mar 14 18:43:40 If I add this command Mar 14 18:43:52 bitbake ask for /bin/bash and zsh Mar 14 18:44:51 do_install() { Mar 14 18:44:51 npm install --no-cache Mar 14 18:44:51 install -d ${D}${libdir}/node_modules Mar 14 18:44:51 install -d ${D}${libdir}/node_modules/serialport/ Mar 14 18:44:51 install -d ${D}${libdir}/node_modules/serialport/build Mar 14 18:44:52 install -d ${D}${libdir}/node_modules/serialport/bin Mar 14 18:44:53 install -d ${S}/build/Release/ ${D}${libdir}/node_modules/serialport/build/ Mar 14 18:44:55 install -m 0664 ${S}/bin/serialportList.js ${D}${libdir}/node_modules/serialport/bin/ Mar 14 18:44:57 install -m 0664 ${S}/bin/serialportTerminal.js ${D}${libdir}/node_modules/serialport/bin/ Mar 14 18:44:59 install -m 0664 ${S}/package.json ${D}${libdir}/node_modules/serialport/ Mar 14 18:45:02 install -m 0664 ${S}/parsers.js ${D}${libdir}/node_modules/serialport/ Mar 14 18:45:03 install -m 0664 ${S}/serialport.js ${D}${libdir}/node_modules/serialport/ Mar 14 18:45:05 cp -r ${S}/build/* ${D}${libdir}/node_modules/serialport/build/ Mar 14 18:45:07 cp -r ${S}/node_modules/* ${D}${libdir}/node_modules Mar 14 18:45:09 } Mar 14 18:45:12 switch it to an install command Mar 14 18:45:24 I have a lot of file int he ${S}/node_modules and I would like to copy to target folder Mar 14 18:45:32 using install -d? Mar 14 18:46:33 39 install ${S}/build/* ${D}${libdir}/node_modules/serialport/build/ Mar 14 18:46:33 40 install ${S}/node_modules/* ${D}${libdir}/node_modules Mar 14 18:46:57 og data follows: Mar 14 18:46:58 | DEBUG: Executing shell function do_install Mar 14 18:46:58 | npm WARN cannot run in wd serialport@1.6.0 node-pre-gyp install --fallback-to-build (wd=/home/icchw/fsl-community-bsp/hvit/tmp/work/armv6-vfp-poky-linux-gnueabi/node-serialport/1.6.1+gitrAUTOINC+94b7bdcc08-r0/git) Mar 14 18:46:58 | install: omitting directory '/home/icchw/fsl-community-bsp/hvit/tmp/work/armv6-vfp-poky-linux-gnueabi/node-serialport/1.6.1+gitrAUTOINC+94b7bdcc08-r0/git/build/Release' Mar 14 18:46:58 | install: omitting directory '/home/icchw/fsl-community-bsp/hvit/tmp/work/armv6-vfp-poky-linux-gnueabi/node-serialport/1.6.1+gitrAUTOINC+94b7bdcc08-r0/git/build/serialport' Mar 14 18:47:01 | WARNING: exit code 1 from a shell command. Mar 14 18:47:03 | ERROR: Function failed: do_install (log file is located at /home/icchw/fsl-community-bsp/hvit/tmp/work/armv6-vfp-poky-linux-gnueabi/node-serialport/1.6.1+gitrAUTOINC+94b7bdcc08-r0/temp/log.do_install.15893) Mar 14 18:47:04 install -t should do it Mar 14 18:47:06 ERROR: Task 2 (/home/icchw/fsl-community-bsp/sources/meta-icchw/recipes-devtools/nodejs/node-serialport_git.bb, do_install) failed with exit code '1' Mar 14 18:47:09 NOTE: Tasks Summary: Attempted 683 tasks of which 682 didn't need to be rerun and 1 failed. Mar 14 18:47:11 NOTE: Writing buildhistory Mar 14 18:47:13 No currently running tasks (575 of 689) Mar 14 18:47:15 ok Mar 14 18:47:19 I will try Mar 14 18:51:10 not worked Mar 14 18:51:17 I'm trying to see what happened Mar 14 18:51:18 | install: target '/home/icchw/fsl-community-bsp/hvit/tmp/work/armv6-vfp-poky-linux-gnueabi/node-serialport/1.6.1+gitrAUTOINC+94b7bdcc08-r0/git/build/Makefile' is not a directory Mar 14 18:51:18 | WARNING: exit code 1 from a shell command. Mar 14 18:51:18 | ERROR: Function failed: do_install (log file is located at /home/icchw/fsl-community-bsp/hvit/tmp/work/armv6-vfp-poky-linux-gnueabi/node-serialport/1.6.1+gitrAUTOINC+94b7bdcc08-r0/temp/log.do_install.16602) Mar 14 18:53:47 install -t needs a target dir and then source(s) Mar 14 19:00:47 source dir ${S}/build/ target dir ${D}${libdir}/node_modules/serialport/build/ Mar 14 19:09:53 when I use install with -t for example install build/* --target-directory=/home/user/tmp Mar 14 19:10:00 just copy the files, not the folders Mar 14 19:10:26 install: omitting directory 'build/Release' Mar 14 19:10:27 install: omitting directory 'build/serialport' Mar 14 19:12:55 if you need to copy a directory recursively, just use cp, not install Mar 14 19:13:56 @kergoth, that the problem Mar 14 19:14:02 when I use cp, the bitbake ask for zsh Mar 14 19:14:11 ARNING: QA Issue: node-serialport requires /bin/zsh, but no providers in its RDEPENDS [file-rdeps] Mar 14 19:14:14 what you used to copy is irrelevent Mar 14 19:14:27 what you copied is. there's a script that needs zsh, then Mar 14 19:14:33 look for files with #!/bin/zsh Mar 14 19:14:49 but this occurs the erro when I try to mount a image Mar 14 19:14:59 my recipe http://pastebin.com/n7505wwV Mar 14 19:15:16 again, if the qa check detected something needing zsh, it's because something you installed needed zsh. Mar 14 19:15:55 :( Mar 14 19:16:38 when I comment the line cp -r ${S}/build/* ${D}${libdir}/node_modules/serialport/build/ Mar 14 19:16:52 there's no problem Mar 14 19:17:05 i don't know who is using zsh Mar 14 19:17:28 again, go look Mar 14 19:17:33 grep is your friend Mar 14 19:17:41 i just told you what to look for Mar 14 19:17:50 ok thanks Mar 14 19:25:02 grep and his buddies (find and xargs) even better Mar 14 19:26:37 indeed. also ack/ag are invaluable time savers Mar 14 19:27:33 but if there's some recipe that must be included zsh Mar 14 19:27:45 when I comment the line that copy all the folder Mar 14 19:28:12 the warning "WARNING: QA Issue: node-serialport requires /bin/zsh, but no providers in its RDEPENDS [file-rdeps]" mus be displayed alright? Mar 14 19:28:19 must* Mar 14 19:29:06 i really have no idea what you're talking about Mar 14 19:29:13 i don't really feel like repeating myself for a third time Mar 14 19:29:34 the cp copies many files, one of those files references zsh. figure out which file references it, and either remove it or split it into another package if you want to avoid the zsh dependency Mar 14 19:29:54 use grep or related tools to determine which, most likely by searching for '#!/bin/zsh' in ${D} Mar 14 19:30:01 there, i'm not saying it again Mar 14 19:35:43 ok I find Mar 14 19:35:43 grep -r "/bin/zsh" * Mar 14 19:35:44 false/grunt-cli/0.1.13/package/completion/zsh:#!/bin/zsh Mar 14 19:35:44 node_modules/grunt-cli/completion/zsh:#!/bin/zsh Mar 14 19:36:36 if the script really needs zsh then you get a bonus depend Mar 14 19:37:48 you should ask yourself "do i really need that?" Mar 14 19:38:04 ok Mar 14 19:38:37 now I'm understanding.... Mar 14 19:38:48 this package come when the npm execute Mar 14 19:39:08 the npm download all the dependencies from node-serialport Mar 14 19:41:11 @kergoth sorry for my insistence in my mistake/understanding Mar 14 19:44:54 so... when the npm download all the packages, the bitbake will parse all the files, and when this script is found , bitbake will try to parse the #!/bin/zsh line and will show the warning Mar 14 19:45:13 right? Mar 14 19:50:22 yup Mar 14 19:50:56 either don't install those scripts or add the rdepend and live with an extra shell... Mar 14 19:51:19 ok Mar 14 19:52:22 * nerdboy won't recommend the more stupid ways Mar 14 19:52:55 I'm reading the code from grunt-cli Mar 14 19:53:05 and he provides a script for bash and zsh Mar 14 19:53:47 you can configure, for my application I don't will use the script for zsh so I can remove this file Mar 14 20:08:26 I made a simple test, I just remove the file using rm and now works Mar 14 20:08:29 rm -rf ${S}/node_modules/grunt-cli/completion/zsh Mar 14 20:08:36 guys, thank you very much! Mar 14 20:16:08 * nerdboy can remember going "wtf?!?" at slackware floppies once Mar 14 20:16:15 vaguely **** ENDING LOGGING AT Sun Mar 15 02:59:59 2015