I recognize now that I need to have an option that does not currently exist
for my target. I changed my SYSTEM environment variable to NetBSD, which
resolves the "-ldl" issue, but is still not correct because the configure
scripts land me in BSD-generic32, which is not quite right either. So it
looks like I need to modify the scripts to have a BSD-ppc entry that has
all the correct settings for that target.

While this will get me past the first issue below, I am still dealing with
the problem in the incore perl script that fails fipsld ("not cross
compiler aware"). I'm not clear what that is indicating I need to correct.
Any pointers on that?

Thanks,
Kevin


On Thu, Dec 8, 2011 at 3:42 PM, Kevin Fowler <[email protected]> wrote:

> I am building and testing the FIPS module for a PowerPC/NetBSD1.6.2 target
> on a x86/linux(CentOS) host.
>
> The Configure script does not have NetBSD options, so I am setting my
> environment variables such that it selects the ppc-linux target. The
> fipscanister.o builds fine.
>
> When I go to build the test executable (make build_algvs), it fails. Seems
> to be because the main Makefile is passing along the environment variables
> it sets up, including "-ldl", and so ignores the test directories EX_LIBS
> definition. fips_algvs.c compiles but the linking fails because libdl
> cannot be found.
>
> [kfowler@sherlock openssl-fips-2.0-test-20111208]$ make build_algvs
> making fipsalgvs in test...
> make[1]: Entering directory
> `/home/kfowler/fips/openssl-fips-2.0-test-20111208/test'
> powerpc--netbsd-gcc -I.. -I../include  -I../fips -DOPENSSL_FIPSCANISTER
> -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN
> -DHAVE_DLFCN_H  -DTERMIO -O3 -Wall   -c -o fips_algvs.o fips_algvs.c
> make[2]: Entering directory
> `/home/kfowler/fips/openssl-fips-2.0-test-20111208/test'
> /opt/netbsd/1.6.2/host/x86-linux2/powerpc--netbsd/bin/ld: cannot find -ldl
>    <<-------------------
> collect2: ld returned 1 exit status
> make[2]: *** [link_app.gnu] Error 1
> make[2]: Leaving directory
> `/home/kfowler/fips/openssl-fips-2.0-test-20111208/test'
> make[1]: *** [fips_algvs] Error 2
> make[1]: Leaving directory
> `/home/kfowler/fips/openssl-fips-2.0-test-20111208/test'
> make: *** [build_algvs] Error 1
>
> NetBSD does not have a libdl - I can only build the test application by
> modifying the Makefile...is that legal after fipscanister.o has been built?
>
> If I comment the "-ldl" out of the Makefile, and do the build, I then get
> the following error:
>
> making fipsalgvs in test...
> make[1]: Entering directory
> `/home/kfowler/fips/openssl-fips-2.0-test-20111208/test'
> make[2]: Entering directory
> `/home/kfowler/fips/openssl-fips-2.0-test-20111208/test'
> ./fips_algvs is not cross-compiler aware.   <<---------------------
> make[2]: *** [link_app.gnu] Error 42
> make[2]: Leaving directory
> `/home/kfowler/fips/openssl-fips-2.0-test-20111208/test'
> make[1]: *** [fips_algvs] Error 2
> make[1]: Leaving directory
> `/home/kfowler/fips/openssl-fips-2.0-test-20111208/test'
> make: *** [build_algvs] Error 1
>
> which seems odd, since it was linked with the cross-compiler linker. Am I
> doing something wrong here? My environment variables are:
>
> export PATH=$CROSSTOOLDIR/bin:$PATH
> export FIPS_SIG=$PWD/util/incore
> export MACHINE=ppc
> export SYSTEM=Linux
> export ARCH=ppc
> export CROSS_COMPILE="powerpc--netbsd-"
> export HOSTCC=gcc
>
>  Appreciate any help.
> Kevin
>
>

Reply via email to