pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/48099: math/octave can not link to static lib archive liboctinterp.la undefined reference to `std::cerr'



>Number:         48099
>Category:       pkg
>Synopsis:       math/octave can not link to static lib archive liboctinterp.la 
>undefined reference to `std::cerr'
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Jul 30 14:25:00 +0000 2013
>Originator:     David Shao
>Release:        NetBSD 6.99.23 amd64 (GENERIC)
>Organization:
>Environment:
NetBSD 6.99.23 amd64 (GENERIC)
>Description:
Using current NetBSD 6.99.23 amd64 (GENERIC) src and current pkgsrc:

if in /etc/mk.conf
PKG_OPTIONS.octave = -glpk 

*** Warning: This system can not link to static lib archive liboctinterp.la.
*** I have the capability to make that library automatically link in when
*** you link to this library.  But I can only do this if you have a
*** shared version of the library, which you do not appear to have.
*** But as you try to build a module library, libtool will still create 
*** a static module, that should work as long as the dlopening application
*** is linked with the -dlopen flag to resolve symbols at runtime.
libtool-fortran: link: ar cru DLD-FUNCTIONS/.libs/urlwrite.a  
DLD-FUNCTIONS/DLD_FUNCTIONS_urlwrite_la-urlwrite.o
libtool-fortran: link: ranlib DLD-FUNCTIONS/.libs/urlwrite.a
libtool-fortran: link: ( cd "DLD-FUNCTIONS/.libs" && rm -f "urlwrite.la" && ln 
-s "../urlwrite.la" "urlwrite.la" )
depbase=`echo main.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -I..  -I../libgnu -I../libgnu -I../libcruft/misc 
-I../liboctave -I../liboctave -I. -I. -I/usr/pkg/include -I/usr/include 
-I/usr/include/krb5 -I/usr/X11R7/include -I/usr/pkg/include -I/usr/include 
-I/usr/include/krb5 -I/usr/X11R7/include -O2 -g -I/usr/pkg/include 
-I/usr/include -I/usr/include/krb5 -I/usr/X11R7/include -pthread  
-DHAVE_CONFIG_H  -Wall -W -Wshadow -Wformat -Wpointer-arith 
-Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings -Wcast-align 
-Wcast-qual -O2 -g -I/usr/pkg/include -I/usr/include -I/usr/include/krb5 
-I/usr/X11R7/include -pthread -pthread -O2 -g -I/usr/pkg/include -I/usr/include 
-I/usr/include/krb5 -I/usr/X11R7/include -pthread -MT main.o -MD -MP -MF 
$depbase.Tpo -c -o main.o main.c &&\
mv -f $depbase.Tpo $depbase.Po
/bin/sh ../libtool --tag=CC   --mode=link gcc -O2 -g -I/usr/pkg/include 
-I/usr/include -I/usr/include/krb5 -I/usr/X11R7/include -pthread  
-DHAVE_CONFIG_H  -Wall -W -Wshadow -Wformat -Wpointer-arith 
-Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings -Wcast-align 
-Wcast-qual -O2 -g -I/usr/pkg/include -I/usr/include -I/usr/include/krb5 
-I/usr/X11R7/include -pthread -pthread -O2 -g -I/usr/pkg/include -I/usr/include 
-I/usr/include/krb5 -I/usr/X11R7/include -pthread -no-undefined  -L/usr/pkg/lib 
-Wl,-R/usr/pkg/lib -L/usr/lib -Wl,-R/usr/lib -L/usr/X11R7/lib 
-Wl,-R/usr/X11R7/lib -o octave main.o liboctinterp.la ../liboctave/liboctave.la 
../libcruft/libcruft.la  -lm  
libtool-fortran: link: gcc -O2 -g 
-I/usr/pkgsrc/math/octave/work/.buildlink/include -I/usr/include/krb5 
-I/usr/pkgsrc/math/octave/work/.x11-buildlink/include -pthread -DHAVE_CONFIG_H 
-Wall -W -Wshadow -Wformat -Wpointer-arith -Wmissing-prototypes 
-Wstrict-prototypes -Wwrite-strings -Wcast-align -Wcast-qual -O2 -g -pthread 
-pthread -O2 -g -pthread -Wl,-R/usr/pkg/lib -Wl,-R/usr/X11R7/lib -o octave 
main.o  -L/usr/pkgsrc/math/octave/work/octave-3.6.4/liboctave/.libs 
-L/usr/pkgsrc/math/octave/work/octave-3.6.4/libcruft/.libs 
-L/usr/pkgsrc/math/octave/work/.buildlink/lib 
-L/usr/pkgsrc/math/octave/work/.x11-buildlink/lib ./.libs/liboctinterp.a 
-L/usr/pkgsrc/math/octave/work/.buildlink/bin/../lib/gcc-lib/x86_64--netbsd/4.1.2/
 
-L/usr/pkgsrc/math/octave/work/.buildlink/bin/../lib/gcc-lib/x86_64--netbsd/4.1.2
 -L/usr/pkgsrc/math/octave/work/.buildlink/lib/gcc-lib/x86_64--netbsd/4.1.2/ 
-L/usr/pkgsrc/math/octave/work/.buildlink/bin/../lib/gcc-lib/x86_64--netbsd/4.1.2///
 -L/usr/pkgsrc/math/
 octave/work/.buildlink/lib/gcc-lib/x86_64--netbsd/4.1.2/// -L/usr/lib// 
/usr/pkgsrc/math/octave/work/octave-3.6.4/liboctave/.libs/liboctave.a -lhdf5 
-lz -lX11 ../liboctave/.libs/liboctave.a 
/usr/pkgsrc/math/octave/work/octave-3.6.4/libcruft/.libs/libcruft.a -lfftw3 
-lreadline -ltermcap -lcurses -lpcre ../libcruft/.libs/libcruft.a -llapack 
-lblas -lf95 -lm -pthread 
-Wl,-rpath,/usr/pkgsrc/math/octave/work/.buildlink/lib 
-Wl,-rpath,/usr/pkgsrc/math/octave/work/.buildlink/lib
/usr/pkgsrc/math/octave/work/octave-3.6.4/liboctave/.libs/liboctave.a(liboctave_la-file-ops.o):
 In function `octave_tempnam(std::string const&, std::string const&, 
std::string&)':
/usr/pkgsrc/math/octave/work/octave-3.6.4/liboctave/file-ops.cc:663: warning: 
warning: tempnam() possibly used unsafely, use mkstemp() or mkdtemp()
./.libs/liboctinterp.a(liboctinterp_la-octave.o): In function `operator<< 
<std::char_traits<char> >':
/usr/include/g++/ostream:513: undefined reference to `std::cerr'
/usr/include/g++/ostream:513: undefined reference to `std::basic_ostream<char, 
std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> 
>(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
./.libs/liboctinterp.a(liboctinterp_la-octave.o): In function `operator<< 
<char, std::char_traits<char>, std::allocator<char> >':
/usr/include/g++/bits/basic_string.h:2605: undefined reference to `std::cerr'
/usr/include/g++/bits/basic_string.h:2605: undefined reference to 
`std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, 
std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, 
char const*, long)'
./.libs/liboctinterp.a(liboctinterp_la-octave.o): In function `operator<< 
<std::char_traits<char> >':
/usr/include/g++/ostream:513: undefined reference to `std::basic_ostream<char, 
std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> 
>(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/include/g++/ostream:513: undefined reference to `std::basic_ostream<char, 
std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> 
>(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
./.libs/liboctinterp.a(liboctinterp_la-octave.o): In function `operator<< 
<char, std::char_traits<char>, std::allocator<char> >':
...

If in /etc/mk.conf
# PKG_OPTIONS.octave = -glpk 

*** Warning: This system can not link to static lib archive liboctinterp.la.
*** I have the capability to make that library automatically link in when
*** you link to this library.  But I can only do this if you have a
*** shared version of the library, which you do not appear to have.
*** But as you try to build a module library, libtool will still create 
*** a static module, that should work as long as the dlopening application
*** is linked with the -dlopen flag to resolve symbols at runtime.
libtool-fortran: link: ar cru DLD-FUNCTIONS/.libs/__fltk_uigetfile__.a  
DLD-FUNCTIONS/DLD_FUNCTIONS___fltk_uigetfile___la-__fltk_uigetfile__.o
libtool-fortran: link: ranlib DLD-FUNCTIONS/.libs/__fltk_uigetfile__.a
libtool-fortran: link: ( cd "DLD-FUNCTIONS/.libs" && rm -f 
"__fltk_uigetfile__.la" && ln -s "../__fltk_uigetfile__.la" 
"__fltk_uigetfile__.la" )
/bin/sh ../libtool  --tag=CXX   --mode=compile c++ -DHAVE_CONFIG_H -I. -I..  
-I../libgnu -I../libgnu -I../libcruft/misc -I../liboctave -I../liboctave -I. 
-I. -I/usr/pkg/include -I/usr/include -I/usr/include/krb5 -I/usr/X11R7/include  
-I/usr/pkg/include -I/usr/include -I/usr/include/krb5 -I/usr/X11R7/include -O2 
-g -I/usr/pkg/include -I/usr/include -I/usr/include/krb5 -I/usr/X11R7/include  
-DHAVE_CONFIG_H -I/usr/pkg/include -Wall -W -Wshadow -Wold-style-cast -Wformat 
-Wpointer-arith -Wwrite-strings -Wcast-align -Wcast-qual -O2 -g 
-I/usr/pkg/include -I/usr/include -I/usr/include/krb5 -I/usr/X11R7/include 
-pthread -O2 -g -I/usr/pkg/include -I/usr/include -I/usr/include/krb5 
-I/usr/X11R7/include -MT DLD-FUNCTIONS/DLD_FUNCTIONS___glpk___la-__glpk__.lo 
-MD -MP -MF DLD-FUNCTIONS/.deps/DLD_FUNCTIONS___glpk___la-__glpk__.Tpo -c -o 
DLD-FUNCTIONS/DLD_FUNCTIONS___glpk___la-__glpk__.lo `test -f 
'DLD-FUNCTIONS/__glpk__.cc' || echo './'`DLD-FUNCTIONS/__glpk__.cc
libtool-fortran: compile:  c++ -DHAVE_CONFIG_H -I. -I.. -I../libgnu 
-I../libcruft/misc -I../liboctave 
-I/usr/pkgsrc/math/octave/work/.buildlink/include -I/usr/include/krb5 
-I/usr/pkgsrc/math/octave/work/.x11-buildlink/include -O2 -g -Wall -W -Wshadow 
-Wold-style-cast -Wformat -Wpointer-arith -Wwrite-strings -Wcast-align 
-Wcast-qual -O2 -g -pthread -O2 -g -MT 
DLD-FUNCTIONS/DLD_FUNCTIONS___glpk___la-__glpk__.lo -MD -MP -MF 
DLD-FUNCTIONS/.deps/DLD_FUNCTIONS___glpk___la-__glpk__.Tpo -c 
DLD-FUNCTIONS/__glpk__.cc  -fPIC -DPIC -o 
DLD-FUNCTIONS/.libs/DLD_FUNCTIONS___glpk___la-__glpk__.o
DLD-FUNCTIONS/__glpk__.cc:96:3: error: 'LPX_K_MSGLEV' was not declared in this 
scope
DLD-FUNCTIONS/__glpk__.cc:97:3: error: 'LPX_K_SCALE' was not declared in this 
scope
DLD-FUNCTIONS/__glpk__.cc:98:3: error: 'LPX_K_DUAL' was not declared in this 
scope
DLD-FUNCTIONS/__glpk__.cc:99:3: error: 'LPX_K_PRICE' was not declared in this 
scope
DLD-FUNCTIONS/__glpk__.cc:100:3: error: 'LPX_K_ROUND' was not declared in this 
scope
DLD-FUNCTIONS/__glpk__.cc:101:3: error: 'LPX_K_ITLIM' was not declared in this 
scope
DLD-FUNCTIONS/__glpk__.cc:102:3: error: 'LPX_K_ITCNT' was not declared in this 
scope
DLD-FUNCTIONS/__glpk__.cc:103:3: error: 'LPX_K_OUTFRQ' was not declared in this 
scope
DLD-FUNCTIONS/__glpk__.cc:104:3: error: 'LPX_K_MPSINFO' was not declared in 
this scope
DLD-FUNCTIONS/__glpk__.cc:105:3: error: 'LPX_K_MPSOBJ' was not declared in this 
scope
...
>How-To-Repeat:

>Fix:



Home | Main Index | Thread Index | Old Index