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

[cmake] Don't allow undefined symbols in shared libraries #10422

Merged
merged 2 commits into from Sep 8, 2016

Conversation

@fetzerch
Copy link
Member

commented Sep 7, 2016

Prevents errors such as:
dlopen failed: cannot locate symbol "_ZTV24CEGLNativeTypeAmlAndroid" referenced by "/data/app/org.xbmc.kodi-2/lib/arm/libkodi.so"...

Needs to be rebased on the AML fix once that is done.

@fetzerch

This comment has been minimized.

Copy link
Member Author

commented Sep 7, 2016

jenkins build this please

@akva2

This comment has been minimized.

Copy link
Contributor

commented Sep 7, 2016

Uhm wont this break all addon binding libs?

Prevents errors such as:
dlopen failed: cannot locate symbol "_ZTV24CEGLNativeTypeAmlAndroid"
  referenced by "/data/app/org.xbmc.kodi-2/lib/arm/libkodi.so"...
@fetzerch fetzerch force-pushed the fetzerch:cmake_noundefined branch from 71091fe to e3532c2 Sep 7, 2016
@fetzerch fetzerch removed the WIP label Sep 7, 2016
@fetzerch

This comment has been minimized.

Copy link
Member Author

commented Sep 7, 2016

Restricted it to android (as in autotools). For the other platforms we build executables and the linker checks the symbols anyways.

The other patch btw was needed to fix an undefined symbol error (getpwent) on a local build.

@wsnipex

This comment has been minimized.

Copy link
Member

commented Sep 8, 2016

lgtm, jenkins build this please

@hudokkow

This comment has been minimized.

Copy link
Member

commented Sep 8, 2016

droids don't like it:

/home/jenkins/workspace/Android-X86/xbmc/windowing/egl/EGLNativeTypeAmlAndroid.h:27: error: undefined reference to 'vtable for CEGLNativeTypeAmlAndroid'
/home/jenkins/android-dev/android-toolchain-x86-17-r10e/bin/../lib/gcc/i686-linux-android/4.8/../../../../i686-linux-android/bin/ld: the vtable symbol may be undefined because the class is missing its key function
/home/jenkins/workspace/Android-X86/xbmc/windowing/egl/EGLWrapper.cpp:75: error: undefined reference to 'CEGLNativeTypeAmlogic::CEGLNativeTypeAmlogic()'

@MartijnKaijser

This comment has been minimized.

Copy link
Member

commented Sep 8, 2016

@hudokkow that's part of my fix PR i guess

edit:
that's the reason droid now crashes.

@fetzerch

This comment has been minimized.

Copy link
Member Author

commented Sep 8, 2016

jenkins build this please

@fetzerch fetzerch merged commit d3197f0 into xbmc:master Sep 8, 2016
3 checks passed
3 checks passed
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
jenkins.kodi.tv You did a great job. Have a cookie.
Details
@fetzerch fetzerch deleted the fetzerch:cmake_noundefined branch Sep 8, 2016
@hudokkow hudokkow added this to the Krypton 17.0-beta2 milestone Sep 8, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
6 participants
You can’t perform that action at this time.