#50275: MyPaint-devel: Libs entry of libmypaint.pc is corrupted/malformed ----------------------------+-------------------------- Reporter: devans@… | Owner: ryandesign@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: MyPaint-devel | ----------------------------+-------------------------- Description changed by devans@…: Old description:
Recent builds from the gimp git repository have a mandatory dependency on libmypaint >= 1.1. However, building with MyPaint-devel fails as follows: {{{ libtool: link: /usr/bin/clang -pipe -Os -arch x86_64 -Wall -Wdeclaration- after-statement -Wmissing-prototypes -Werror=missing-prototypes -Wstrict- prototypes -Wmissing-declarations -Winit-self -Wpointer-arith -Wold- style-definition -Wmissing-format-attribute -Wformat-security -Wtype- limits -fno-common -fdiagnostics-show-option -Wreturn-type -Wl,-u -Wl,_gimp_vectors_undo_get_type -Wl,-u -Wl,_gimp_vectors_mod_undo_get_type -Wl,-u -Wl,_gimp_param_spec_duplicate -Wl,-u -Wl,_gimp_operations_init -Wl,-u -Wl,_xcf_init -Wl,-u -Wl,_internal_procs_init -Wl,-u -Wl,_gimp_plug_in_manager_restore -Wl,-u -Wl,_gimp_pdb_compat_param_spec -Wl,-headerpad_max_install_names -arch x86_64 -o .libs/gimp-console-2.9 gimp_console_2.9-app.o gimp_console_2.9-errors.o gimp_console_2.9-language.o gimp_console_2.9-sanity.o gimp_console_2.9-signals.o gimp_console_2.9-tests.o gimp_console_2.9-unique.o gimp_console_2.9-units.o gimp_console_2.9-version.o gimp_console_2.9 -gimp-debug.o gimp_console_2.9-gimp-log.o gimp_console_2.9-main.o -L/opt/local/lib xcf/libappxcf.a pdb/libappinternal-procs.a pdb/libapppdb.a plug-in/libappplug-in.a vectors/libappvectors.a core/libappcore.a file/libappfile.a text/libapptext.a paint/libapppaint.a operations/libappoperations.a gegl/libappgegl.a config/libappconfig.a ../libgimpconfig/.libs/libgimpconfig-2.0.dylib ../libgimpmath/.libs/libgimpmath-2.0.dylib ../libgimpthumb/.libs/libgimpthumb-2.0.dylib ../libgimpcolor/.libs/libgimpcolor-2.0.dylib ../libgimpmodule/.libs/libgimpmodule-2.0.dylib /opt/local/var/macports/build/_opt_macports_trunk_dports_graphics_gimp2-devel/gimp2-devel/work /gimp- 3e18b3bbfb2cea3711993027ac814af1d625fe28/libgimpconfig/.libs/libgimpconfig-2.0.dylib /opt/local/var/macports/build/_opt_macports_trunk_dports_graphics_gimp2-devel/gimp2-devel/work /gimp- 3e18b3bbfb2cea3711993027ac814af1d625fe28/libgimpcolor/.libs/libgimpcolor-2.0.dylib /opt/local/var/macports/build/_opt_macports_trunk_dports_graphics_gimp2-devel/gimp2-devel/work /gimp- 3e18b3bbfb2cea3711993027ac814af1d625fe28/libgimpmath/.libs/libgimpmath-2.0.dylib /opt/local/var/macports/build/_opt_macports_trunk_dports_graphics_gimp2-devel/gimp2-devel/work /gimp- 3e18b3bbfb2cea3711993027ac814af1d625fe28/libgimpbase/.libs/libgimpbase-2.0.dylib ../libgimpbase/.libs/libgimpbase-2.0.dylib -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lpangoft2-1.0 -lpango-1.0 -lfontconfig -lfreetype -lharfbuzz -lcairo -lgegl-0.3 -lgegl-npd-0.3 -lgmodule-2.0 -ljson- glib-1.0 -lgio-2.0 -lbabl-0.1 -lgexiv2 -lexiv2 -lgobject-2.0 -lglib-2.0 -llcms2 -lz -lmypaint -lm-lintl -ljson-c -lintl -lm -ljpeg -framework Cocoa ld: library not found for -lm-lintl clang: error: linker command failed with exit code 1 (use -v to see invocation) }}}
This error can be seen to be coming from a corrupted/malformed Libs: entry in MyPaint-devel's libmypaint.pc: {{{ $ pkg-config --libs libmypaint -L/opt/local/lib -lmypaint -lm-lintl -ljson-c $ grep Libs: /opt/local/lib/pkgconfig/libmypaint.pc Libs: -L${libdir} -lmypaint -lm-lintl }}}
The template from which this is generated appears to be ${worksrcpath}/brushlib/pkgconfig.pc.in which initially contains the line {{{ $ grep Libs: pkgconfig.pc.in Libs: -L${libdir} -l@LIBNAME@ @LIBS@ @LINKFLAGS@ }}}
So it appears that the expansion of @LIBS@ is the culprit, although how scons does this is beyond me at this point.
Since this is now a mandatory dependency, further updates to gimp2-devel, gimp3-devel are blocked until this can be fixed. See also #48278.
Thanks in advance for any help you can provide.
New description: Recent builds from the gimp git repository have a mandatory dependency on libmypaint >= 1.1. However, building with MyPaint-devel fails as follows: {{{ libtool: link: /usr/bin/clang -pipe -Os -arch x86_64 -Wall -Wdeclaration- after-statement -Wmissing-prototypes -Werror=missing-prototypes -Wstrict- prototypes -Wmissing-declarations -Winit-self -Wpointer-arith -Wold-style- definition -Wmissing-format-attribute -Wformat-security -Wtype-limits -fno-common -fdiagnostics-show-option -Wreturn-type -Wl,-u -Wl,_gimp_vectors_undo_get_type -Wl,-u -Wl,_gimp_vectors_mod_undo_get_type -Wl,-u -Wl,_gimp_param_spec_duplicate -Wl,-u -Wl,_gimp_operations_init -Wl,-u -Wl,_xcf_init -Wl,-u -Wl,_internal_procs_init -Wl,-u -Wl,_gimp_plug_in_manager_restore -Wl,-u -Wl,_gimp_pdb_compat_param_spec -Wl,-headerpad_max_install_names -arch x86_64 -o .libs/gimp-console-2.9 gimp_console_2.9-app.o gimp_console_2.9-errors.o gimp_console_2.9-language.o gimp_console_2.9-sanity.o gimp_console_2.9-signals.o gimp_console_2.9-tests.o gimp_console_2.9-unique.o gimp_console_2.9-units.o gimp_console_2.9-version.o gimp_console_2.9-gimp-debug.o gimp_console_2.9 -gimp-log.o gimp_console_2.9-main.o -L/opt/local/lib xcf/libappxcf.a pdb /libappinternal-procs.a pdb/libapppdb.a plug-in/libappplug-in.a vectors/libappvectors.a core/libappcore.a file/libappfile.a text/libapptext.a paint/libapppaint.a operations/libappoperations.a gegl/libappgegl.a config/libappconfig.a ../libgimpconfig/.libs/libgimpconfig-2.0.dylib ../libgimpmath/.libs/libgimpmath-2.0.dylib ../libgimpthumb/.libs/libgimpthumb-2.0.dylib ../libgimpcolor/.libs/libgimpcolor-2.0.dylib ../libgimpmodule/.libs/libgimpmodule-2.0.dylib /opt/local/var/macports/build/_opt_macports_trunk_dports_graphics_gimp2-devel/gimp2-devel/work /gimp- 3e18b3bbfb2cea3711993027ac814af1d625fe28/libgimpconfig/.libs/libgimpconfig-2.0.dylib /opt/local/var/macports/build/_opt_macports_trunk_dports_graphics_gimp2-devel/gimp2-devel/work /gimp- 3e18b3bbfb2cea3711993027ac814af1d625fe28/libgimpcolor/.libs/libgimpcolor-2.0.dylib /opt/local/var/macports/build/_opt_macports_trunk_dports_graphics_gimp2-devel/gimp2-devel/work /gimp- 3e18b3bbfb2cea3711993027ac814af1d625fe28/libgimpmath/.libs/libgimpmath-2.0.dylib /opt/local/var/macports/build/_opt_macports_trunk_dports_graphics_gimp2-devel/gimp2-devel/work /gimp- 3e18b3bbfb2cea3711993027ac814af1d625fe28/libgimpbase/.libs/libgimpbase-2.0.dylib ../libgimpbase/.libs/libgimpbase-2.0.dylib -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lpangoft2-1.0 -lpango-1.0 -lfontconfig -lfreetype -lharfbuzz -lcairo -lgegl-0.3 -lgegl-npd-0.3 -lgmodule-2.0 -ljson-glib-1.0 -lgio-2.0 -lbabl-0.1 -lgexiv2 -lexiv2 -lgobject-2.0 -lglib-2.0 -llcms2 -lz -lmypaint -lm-lintl -ljson-c -lintl -lm -ljpeg -framework Cocoa ld: library not found for -lm-lintl clang: error: linker command failed with exit code 1 (use -v to see invocation) }}} This error can be seen to be coming from a corrupted/malformed Libs: entry in MyPaint-devel's libmypaint.pc: {{{ $ pkg-config --libs libmypaint -L/opt/local/lib -lmypaint -lm-lintl -ljson-c $ grep Libs: /opt/local/lib/pkgconfig/libmypaint.pc Libs: -L${libdir} -lmypaint -lm-lintl }}} The template from which this is generated appears to be ${worksrcpath}/brushlib/pkgconfig.pc.in which initially contains the line {{{ $ grep Libs: pkgconfig.pc.in Libs: -L${libdir} -l@LIBNAME@ @LIBS@ @LINKFLAGS@ }}} So it appears that the expansion of @LIBS@ is the culprit, although how scons does this is beyond me at this point. Since this is now a mandatory dependency, further updates to gimp2-devel, gimp3-devel are blocked until this can be fixed. See also (updated) #48278. Thanks in advance for any help you can provide. -- -- Ticket URL: <https://trac.macports.org/ticket/50275#comment:1> MacPorts <https://www.macports.org/> Ports system for OS X