[MacPorts] #42702: glibtool drops dylibs at link time
MacPorts
noreply at macports.org
Sun Mar 2 20:58:35 PST 2014
#42702: glibtool drops dylibs at link time
------------------------+---------------------------------
Reporter: jeremyhu@… | Owner: ram@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.2.1
Keywords: | Port: glibtool webkit-gtk
------------------------+---------------------------------
VLC fails to build with opencv support because opencv's pkg-config file
lists paths to dylibs rather than -l<lib> arguments. This should work
just fine, but glibtool doesn't like it. It just drops the dylibs on the
floor when creating the command line to envoke:
{{{
/opt/local/bin/glibtool --tag=CXX --mode=link /usr/bin/clang++ -pipe
-Os -arch x86_64 -stdlib=libc++ -D_INTL_REDIRECT_MACROS
-I/opt/local/var/macports/build
/_Users_jeremy_src_macports_trunk_dports_multimedia_VLC-devel/VLC-
devel/work/VLC-devel-2.1.99/contrib/include -Wall -Wextra -Wsign-compare
-Wundef -Wpointer-arith -Wvolatile-register-var -fvisibility=hidden
-ffast-math -funroll-loops -fomit-frame-pointer -avoid-version -module
-export-symbols-regex ^vlc_entry -shrext .dylib -no-undefined
../../compat/libcompat.la ../../src/libvlccore.la -rpath
'/opt/local/lib/vlc/plugins/video_filter' -L/opt/local/lib
-Wl,-headerpad_max_install_names -arch x86_64
-Wl,-headerpad_max_install_names -L/opt/local/var/macports/build
/_Users_jeremy_src_macports_trunk_dports_multimedia_VLC-devel/VLC-
devel/work/VLC-devel-2.1.99/contrib/lib -o libopencv_example_plugin.la
libopencv_example_plugin_la-opencv_example.lo
/opt/local/lib/libopencv_calib3d.dylib
/opt/local/lib/libopencv_contrib.dylib /opt/local/lib/libopencv_core.dylib
/opt/local/lib/libopencv_features2d.dylib
/opt/local/lib/libopencv_flann.dylib /opt/local/lib/libopencv_gpu.dylib
/opt/local/lib/libopencv_highgui.dylib
/opt/local/lib/libopencv_imgproc.dylib
/opt/local/lib/libopencv_legacy.dylib /opt/local/lib/libopencv_ml.dylib
/opt/local/lib/libopencv_nonfree.dylib
/opt/local/lib/libopencv_objdetect.dylib
/opt/local/lib/libopencv_photo.dylib
/opt/local/lib/libopencv_stitching.dylib
/opt/local/lib/libopencv_superres.dylib /opt/local/lib/libopencv_ts.a
/opt/local/lib/libopencv_video.dylib
/opt/local/lib/libopencv_videostab.dylib
*** Warning: Linking the shared library libopencv_example_plugin.la
against the
*** static library /opt/local/lib/libopencv_ts.a is not portable!
glibtool: link: rm -fr .libs/libopencv_example_plugin.exp
glibtool: link: /usr/bin/nm .libs/libopencv_example_plugin_la-
opencv_example.o | sed -n -e 's/^.*[ ]\([BCDEGRST][BCDEGRST]*\)[
][ ]*_\([_A-Za-z][_A-Za-z0-9]*\)$/\1 _\2 \2/p' | sed '/ __gnu_lto/d'
| /usr/bin/sed 's/.* //' | sort | uniq >
.libs/libopencv_example_plugin.exp
glibtool: link: /usr/bin/grep -E -e "^vlc_entry"
".libs/libopencv_example_plugin.exp" >
".libs/libopencv_example_plugin.expT"
glibtool: link: mv -f ".libs/libopencv_example_plugin.expT"
".libs/libopencv_example_plugin.exp"
glibtool: link: sed -e 's,^,_,' < .libs/libopencv_example_plugin.exp >
.libs/libopencv_example_plugin-symbols.expsym
glibtool: link: /usr/bin/clang++ -o .libs/libopencv_example_plugin.dylib
-bundle .libs/libopencv_example_plugin_la-opencv_example.o
../../compat/.libs/libcompat.a -L/opt/local/lib
-L/opt/local/var/macports/build
/_Users_jeremy_src_macports_trunk_dports_multimedia_VLC-devel/VLC-
devel/work/VLC-devel-2.1.99/contrib/lib ../../src/.libs/libvlccore.dylib
-lintl -lidn -liconv -lm /opt/local/lib/libopencv_ts.a -Os -arch x86_64
-stdlib=libc++ -Wl,-headerpad_max_install_names -arch x86_64
-Wl,-headerpad_max_install_names -Wl,-exported_symbols_list,.libs
/libopencv_example_plugin-symbols.expsym
Undefined symbols for architecture x86_64:
"_cvClearMemStorage", referenced from:
Filter(filter_t*, picture_t*) in libopencv_example_plugin_la-
opencv_example.o
"_cvCreateMemStorage", referenced from:
OpenFilter(vlc_object_t*) in libopencv_example_plugin_la-
opencv_example.o
"_cvGetSeqElem", referenced from:
Filter(filter_t*, picture_t*) in libopencv_example_plugin_la-
opencv_example.o
"_cvHaarDetectObjects", referenced from:
Filter(filter_t*, picture_t*) in libopencv_example_plugin_la-
opencv_example.o
"_cvLoad", referenced from:
OpenFilter(vlc_object_t*) in libopencv_example_plugin_la-
opencv_example.o
"_cvRectangle", referenced from:
Filter(filter_t*, picture_t*) in libopencv_example_plugin_la-
opencv_example.o
"_cvReleaseHaarClassifierCascade", referenced from:
CloseFilter(vlc_object_t*) in libopencv_example_plugin_la-
opencv_example.o
"_cvReleaseMemStorage", referenced from:
CloseFilter(vlc_object_t*) in libopencv_example_plugin_la-
opencv_example.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see
invocation)
}}}
--
Ticket URL: <https://trac.macports.org/ticket/42702>
MacPorts <http://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list