Operating System - HP-UX
1755538 Members
3745 Online
108835 Solutions
New Discussion юеВ

ld: Mismatched REDUCEDFP. Expected EF_IA_64_REDUCEDFP,

 
Figo_1
Occasional Advisor

ld: Mismatched REDUCEDFP. Expected EF_IA_64_REDUCEDFP,

Hi
I try to build a test kernel module on HP-UX B.11.23(IA64), which linked openssl(0.9.8.e) libraries. it come to give out this messages.

# section 1: uname
-----------------------
bash-3.2# uname -a
HP-UX host B.11.23 U ia64 2316938087 unlimited-user license

# section 2: kernel module compile flags
------------------------------
/opt/ansic/bin/cc -Ae +DD64 +O2 +DSitanium2 +kernel +objstatvars +Olit=all +Oshortdata=0 +W863 -DACLS -DAUDIT -DHPONCPLUS -DIDDS -DIPSEC -DIVT_INTERCEPT -DLWSYSCALL -DPGPROF -DSTCP -D_CLEAN_BE -D_HPUX_SOURCE -D_KERNEL -D_LARGEFILE64_SOURCE -D_NO_USER_PROTOS -D_UNSUPPORTED -D__BIGMSGQUEUE_ENABLED -D__ROSE__ -U__hp9000s700 -D_XPG4_EXTENDED -D__STDC_EXT__ -DKERNEL_DEBUGGER -DVARIABLE_UAREA -D_SYSCALL_64 -D__NO_PA_HDRS -D_KERNEL

# section 3: openssl(0.9.8e) configure options
------------------------------
./Configure hpux64-ia64-cc ....(and followed the flags in section 2)



# section 4: Makefile, here MY_DEP_OBJS=libcrypto.a
-----------------------------
${MODULE}: ${OBJS}
${Q}${MODLINK} -o ${MODULE} ${OBJS} ${MY_DEP_OBJS}

#
# Duplicate this rule as needed, updating dependencies appropriately
#
${MODULE}.o: ${MODULE}.c
${CC} ${CCOPTS} ${IDENTS} -c ${MODULE}.c

#section 5: error messages:
Linking module my_test_module...
ld: Mismatched REDUCEDFP. Expected EF_IA_64_REDUCEDFP, which was set by the file: my_test_module.o, but found Undefined in the file: libcrypto.a[aes-ia64.o].
1 errors.
ld: failed with exit code 1
make: *** [fp_core] Error 1

Did I miss any compile flags to set EF_IA_64_REDUCEDFP bit? any ideas would be appreciated!
6 REPLIES 6
Dennis Handly
Acclaimed Contributor

Re: ld: Mismatched REDUCEDFP. Expected EF_IA_64_REDUCEDFP,

>I try to build a test kernel module on HP-UX B.11.23, which linked openssl libraries.

I think you have a serious chicken & egg problem here. The kernel shouldn't include fancy smancy stuff like ssl. That's for user applications.

>MY_DEP_OBJS=libcrypto.a

Have you compiled this with +kernel?

Figo_1
Occasional Advisor

Re: ld: Mismatched REDUCEDFP. Expected EF_IA_64_REDUCEDFP,

Thanks for the response

1. As the test kernel modules need call encrypt/decrypt API in openssl. the above test using a static library for linking instead of writing another openssl kernel module for dependence.

2. Yes, I'm quite sure that the libcrypto.a was built with the same flags for test kernel module in (#section 2), including +kernel and -D_KERNEL.

Now my key point focus on that how to deal with this build error?

Dennis Handly
Acclaimed Contributor

Re: ld: Mismatched REDUCEDFP. Expected EF_IA_64_REDUCEDFP,

>I'm quite sure that the libcrypto.a was built with the same flags for test kernel module

The error message says that this object wasn't: aes-ia64.o

You need to remove/clean libcrypto.a and of its objects and rebuild.
Figo_1
Occasional Advisor

Re: ld: Mismatched REDUCEDFP. Expected EF_IA_64_REDUCEDFP,

>The error message says that this object wasn't: aes-ia64.o

>You need to remove/clean libcrypto.a and of its objects and rebuild.


I try to look into the openssl source,
[aes-ia64.o] was created by aes-ia64.s, Then I add "no-asm" in openssl Configure flags, now the libraries can be linked for the test module.

thanks for your information again!
Figo_1
Occasional Advisor

Re: ld: Mismatched REDUCEDFP. Expected EF_IA_64_REDUCEDFP,

closed
Dennis Handly
Acclaimed Contributor

Re: ld: Mismatched REDUCEDFP. Expected EF_IA_64_REDUCEDFP,

>aes-ia64.o was created by aes-ia64.s

To get this to assemble, you would need to make sure it doesn't use specific floating point registers. And also mark the executable with the right directives.
And you would need to use absolute addressing to access variables.