On 19-01-17 21:58, Robert P. J. Day wrote:
following up on the whining i did a while back to finish off a few perl recipes for OE, i have just a few left to resolve, and this is one of them. i managed to get several dozen perl recipes to work simply by throwing together recipes based on very little understanding of perl cpan mechanics and just mindlessly cribbing boilerplate from other recipes. if it worked, yee ha, move on. here's my current recipe for this module (again, slapped together without really understanding what's going on under the hood): ///// start ///// DESCRIPTION = "Filesys::SmbClient" SECTION = "libs" LICENSE = "Artisticv1 | GPLv1+" PR = "r0" MAINTAINER= "rday" HOMEPAGE= "https://metacpan.org/pod/Filesys::SmbClient" LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Artistic-1.0;md5=cda03bbdc3c1951996392b872397b798 \ file://${COMMON_LICENSE_DIR}/GPL-1.0;md5=e9e36a9de734199567a4d769498f743d" DEPENDS += "samba" SRC_URI = "https://cpan.metacpan.org/authors/id/A/AL/ALIAN/Filesys-SmbClient-3.2.tar.gz" SRC_URI[md5sum] = "8a4205fe748aac7f43fb2a0e8ef502b2" SRC_URI[sha256sum] = "a9f2f3d4675de76f9dcae2be40bda93495cd5fafb1bb6326d71833cea451bc6e" S = "${WORKDIR}/Filesys-SmbClient-${PV}" inherit cpan EXTRA_CPANFLAGS = "INC='-I${STAGING_INCDIR}/samba-4.0' LIBS='-L${STAGING_LIBDIR}'" BBCLASSEXTEND = "native" ///// end ///// and the error i get when i try to build makes it *clear* that the configuration is failing to set up properly for cross-compiling for my powerpc target: $ bitbake libfilesys-smbclient-perl ... snip ... | Where can I find libsmbclient.h ? [] ************************************************************* | ** WHAT !!!! | ** I Can't find /libsmbclient.h : No such file or directory. | ************************************************************* ... snip ... | Where can I find libsmbclient.so ? [] ************************************************************* | ** WHAT !!!! | ** I Can't find libsmbclient.so : No such file or directory. ... snip ... | checking for C compiler default output... a.out | checking whether the C compiler works... configure: error: cannot run C compiled programs. | If you meant to cross compile, use `--host'. | See `config.log' for more details. and sure enough, the config.log for this build contains: Target: powerpc-poky-linux Configured with: ../../../../../../work-shared/gcc-6.3.0-r0/gcc-6.3.0/configure --build=x86_64-linux --host=x86_64-linux --target=powerpc-poky-linux ...
Quick observation: I think host and target are wrong. The "host" is where the software will run. The line above builds something that runs on x86_64 and that compiles for a powerpc target (target only makes sense if you're compiling a compiler). You probably wanted --host=powerpc-poky-linux and no "--target" at all.
beyond this, i'm not sure how to use an OE patch to adjust this source the right way, given that dozens and dozens of other modules cross-compiled just fine. thoughts? i am in now way a perl expert so i really have no idea where to go from here. rday
Kind regards, Mike Looijmans System Expert TOPIC Products Materiaalweg 4, NL-5681 RJ Best Postbus 440, NL-5680 AK Best Telefoon: +31 (0) 499 33 69 79 E-mail: mike.looijm...@topicproducts.com Website: www.topicproducts.com Please consider the environment before printing this e-mail -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core