Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FTBFS on hppa - undefined symbols #133

Closed
malaterre opened this issue Jan 28, 2022 · 11 comments
Closed

FTBFS on hppa - undefined symbols #133

malaterre opened this issue Jan 28, 2022 · 11 comments

Comments

@malaterre
Copy link
Contributor

Let see if I can get input from you guys on the following issue we have within Debian on hppa arch.

It turns out that the symbol black magic introduced in 1.3.1 makes the compilation of libkcapi fails on hppa arch:

It looks like the symbols that are messing the builds are the ones duplicated from one version to another, for example: kcapi_cipher_stream_init_enc which is either:

kcapi_cipher_stream_init_enc@LIBKCAPI_0.12.0
kcapi_cipher_stream_init_enc@LIBKCAPI_1.3.1
@malaterre
Copy link
Contributor Author

malaterre commented Jan 28, 2022

In particular compare the hppa output of:

malat@panama ~/libkcapi-1.3.0 % nm -D ./.libs/libkcapi.so | grep kcapi_aead_stream_init_enc
00008688 T kcapi_aead_stream_init_enc@@LIBKCAPI_0.12.0

vs:

malat@panama ~/libkcapi-1.3.1 % nm -D ./.libs/libkcapi.so | grep kcapi_aead_stream_init_enc
         U kcapi_aead_stream_init_enc

For comparison on my amd64 system:

libkcapi-1.3.0  % nm -D ./.libs/libkcapi.so | grep kcapi_aead_stream_init_enc
0000000000009700 T kcapi_aead_stream_init_enc@@LIBKCAPI_0.12.0

vs

libkcapi-1.3.1 % nm -D ./.libs/libkcapi.so | grep kcapi_aead_stream_init_enc
000000000000a271 T kcapi_aead_stream_init_enc@LIBKCAPI_0.12.0
000000000000a22c T kcapi_aead_stream_init_enc@@LIBKCAPI_1.3.1

@malaterre
Copy link
Contributor Author

@simo5 any suggestions ?

@simo5
Copy link
Contributor

simo5 commented Jan 28, 2022

sounds like hppa tooling is failing to understand how to deal with symbol vesioning correctly?
what compiler version is this, what linker?

@malaterre
Copy link
Contributor Author

Staring at the log file:

I see:

gcc-11_11.2.0-13

and

binutils-common_2.37-10 binutils-hppa-linux-gnu_2.37-10

@malaterre
Copy link
Contributor Author

If I cherry-pick commit 71d80bc, the build on hppa succeeds...

@malaterre
Copy link
Contributor Author

I'll cherry-pick also 3e9a149 just in case and see how it goes on debian buildds machines.

@simo5
Copy link
Contributor

simo5 commented Jan 28, 2022

Sounds like you should pull in some gcc expert to see if there are bugs that are specific to hppa. I haven't touched that arch in more than a decade, and I am not aware of differences with it that we need to account for.
Are we sure there are no debian patches that are breaking this?

@smuellerDD
Copy link
Owner

smuellerDD commented Jan 28, 2022 via email

@simo5
Copy link
Contributor

simo5 commented Jan 28, 2022

If I cherry-pick commit 71d80bc, the build on hppa succeeds...

Ah sorry, did not realize these commits hadn't made a release yet, as we applied them downstream in Fedora as well.

@malaterre
Copy link
Contributor Author

malaterre commented Jan 28, 2022

@simo5 the description of 71d80bc refer to the use of LTO which is not my case on hppa (or at least I could not see an explicit reference to flto in the build log)

@malaterre
Copy link
Contributor Author

FYI, I forwarded the issue upstream:

I believe this is safe now to close this issue. Thanks all.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants