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

issues with how libmypaint, libmypaint-gegl are linked #64

Open
nphilipp opened this issue Jul 31, 2016 · 2 comments
Open

issues with how libmypaint, libmypaint-gegl are linked #64

nphilipp opened this issue Jul 31, 2016 · 2 comments

Comments

@nphilipp
Copy link
Contributor

Hi there, during the review of the libmypaint package for Fedora, a couple of issues were found regarding how the libraries are linked:

libmypaint.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libmypaint-1.3.so.0.0.0 /lib64/libglib-2.0.so.0
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 gegl_buffer_get
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 g_object_unref
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 mypaint_tiled_surface_init
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 gegl_buffer_set
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 gegl_buffer_iterator_next
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 g_assertion_message_expr
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 g_return_if_fail_warning
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 gegl_node_new_child
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 g_object_new
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 gegl_buffer_get_format
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 gegl_node_new
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 gegl_malloc
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 g_object_ref
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 gegl_free
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 babl_format_get_bytes_per_pixel
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 babl_type
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 babl_format_new
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 mypaint_surface_ref
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 g_log
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 gegl_buffer_iterator_new
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 gegl_buffer_get_type
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 gegl_node_link
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 gegl_rectangle_bounding_box
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 g_type_check_instance_is_a
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 babl_component
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 g_type_check_instance_cast
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 gegl_buffer_set_extent
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 g_boxed_type_register_static
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 babl_model
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 g_object_get
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 mypaint_surface_unref
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 mypaint_tiled_surface_destroy
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 gegl_node_process
libmypaint.x86_64: W: undefined-non-weak-symbol /usr/lib64/libmypaint-gegl.so.0.0.0 gegl_rectangle_set
libmypaint.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libmypaint-gegl.so.0.0.0 /lib64/libm.so.6
libmypaint.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libmypaint-gegl.so.0.0.0 /lib64/libpthread.so.0
1 packages and 0 specfiles checked; 0 errors, 37 warnings.

It looks like on the one hand, both libmypaint and libmypaint-gegl are unnecessarily linked against glib, and libm, libpthread, respectively and on the other that libmypaint-gegl should be additionally linked against libmypaint, gegl, babl, gobject and glib. I've looked into this a bit, but didn't find easily where to fix this myself.

@QuLogic
Copy link
Member

QuLogic commented Aug 1, 2016

This may be fixed by #50?

@nphilipp
Copy link
Contributor Author

nphilipp commented Aug 2, 2016

That seems to be the case as far as the undefined symbols in libmypaint-gegl go. I don't think it fixes that the libs are unnecessarily linked against glib, libpthread and the math lib.

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

No branches or pull requests

2 participants