octave-bug-tracker
[Top][All Lists]
Advanced

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

[Octave-bug-tracker] [bug #59820] build fails on macOS with visibility s


From: Markus Mützel
Subject: [Octave-bug-tracker] [bug #59820] build fails on macOS with visibility settings
Date: Sun, 5 Dec 2021 10:16:10 -0500 (EST)
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.55 Safari/537.36 Edg/96.0.1054.43

Follow-up Comment #45, bug #59820 (project octave):

I pushed two patches that should make sure that more template classes are
(forward) declared with the correct visibility settings:
https://hg.savannah.gnu.org/hgweb/octave/rev/c6cd2f582254
https://hg.savannah.gnu.org/hgweb/octave/rev/1f0a2689cab2

Previously, jwe pushed this changeset:
https://hg.savannah.gnu.org/hgweb/octave/rev/e38202d3628d

With those, the compiler warnings like the ones shown in comment #41 have
greatly reduced on the GitHub runners afaics. Remaining ones are:

2021-12-05T14:38:19.6454710Z ld: warning: direct access in function
'octave::math::sparse_lu<SparseComplexMatrix>::~sparse_lu()' from file
'liboctave/array/.libs/libarray.a(libarray_la-CSparse.o)' to global weak
symbol 'vtable for octave::math::sparse_lu<SparseComplexMatrix>' from file
'liboctave/numeric/.libs/libnumeric.a(libnumeric_la-sparse-lu.o)' means the
weak symbol cannot be overridden at runtime. This was likely caused by
different translation units being compiled with different visibility
settings.
2021-12-05T14:38:19.6467310Z ld: warning: direct access in function
'SparseMatrix::inverse(MatrixType&, long long&, double&, bool, bool) const'
from file 'liboctave/array/.libs/libarray.a(libarray_la-dSparse.o)' to global
weak symbol 'vtable for octave::math::sparse_chol<SparseMatrix>' from file
'liboctave/numeric/.libs/libnumeric.a(libnumeric_la-sparse-chol.o)' means the
weak symbol cannot be overridden at runtime. This was likely caused by
different translation units being compiled with different visibility
settings.
2021-12-05T14:38:19.6526100Z ld: warning: direct access in function
'SparseMatrix::inverse(MatrixType&, long long&, double&, bool, bool) const'
from file 'liboctave/array/.libs/libarray.a(libarray_la-dSparse.o)' to global
weak symbol 'vtable for octave::math::sparse_chol<SparseMatrix>' from file
'liboctave/numeric/.libs/libnumeric.a(libnumeric_la-sparse-chol.o)' means the
weak symbol cannot be overridden at runtime. This was likely caused by
different translation units being compiled with different visibility
settings.
2021-12-05T14:38:19.6531600Z ld: warning: direct access in function
'octave::math::sparse_chol<SparseMatrix>::~sparse_chol()' from file
'liboctave/array/.libs/libarray.a(libarray_la-dSparse.o)' to global weak
symbol 'vtable for octave::math::sparse_chol<SparseMatrix>' from file
'liboctave/numeric/.libs/libnumeric.a(libnumeric_la-sparse-chol.o)' means the
weak symbol cannot be overridden at runtime. This was likely caused by
different translation units being compiled with different visibility
settings.
2021-12-05T14:38:19.6539520Z ld: warning: direct access in function
'octave::math::sparse_chol<SparseMatrix>::~sparse_chol()' from file
'liboctave/array/.libs/libarray.a(libarray_la-dSparse.o)' to global weak
symbol 'vtable for octave::math::sparse_chol<SparseMatrix>' from file
'liboctave/numeric/.libs/libnumeric.a(libnumeric_la-sparse-chol.o)' means the
weak symbol cannot be overridden at runtime. This was likely caused by
different translation units being compiled with different visibility
settings.
2021-12-05T14:38:19.6645690Z ld: warning: direct access in function
'octave::math::sparse_lu<SparseMatrix>::~sparse_lu()' from file
'liboctave/array/.libs/libarray.a(libarray_la-dSparse.o)' to global weak
symbol 'vtable for octave::math::sparse_lu<SparseMatrix>' from file
'liboctave/numeric/.libs/libnumeric.a(libnumeric_la-sparse-lu.o)' means the
weak symbol cannot be overridden at runtime. This was likely caused by
different translation units being compiled with different visibility
settings.
2021-12-05T14:38:19.6724270Z ld: warning: direct access in function
'make_cholb(SparseMatrix&, SparseMatrix&, ColumnVector&)' from file
'liboctave/numeric/.libs/libnumeric.a(libnumeric_la-eigs-base.o)' to global
weak symbol 'vtable for octave::math::sparse_chol<SparseMatrix>' from file
'liboctave/numeric/.libs/libnumeric.a(libnumeric_la-sparse-chol.o)' means the
weak symbol cannot be overridden at runtime. This was likely caused by
different translation units being compiled with different visibility
settings.
2021-12-05T14:38:19.6747560Z ld: warning: direct access in function
'make_cholb(SparseMatrix&, SparseMatrix&, ColumnVector&)' from file
'liboctave/numeric/.libs/libnumeric.a(libnumeric_la-eigs-base.o)' to global
weak symbol 'vtable for octave::math::sparse_chol<SparseMatrix>' from file
'liboctave/numeric/.libs/libnumeric.a(libnumeric_la-sparse-chol.o)' means the
weak symbol cannot be overridden at runtime. This was likely caused by
different translation units being compiled with different visibility
settings.
2021-12-05T14:38:31.6039290Z ld: warning: direct access in function
'octave::cdef_object_array::subsasgn(std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> > const&,
std::__1::list<octave_value_list, std::__1::allocator<octave_value_list> >
const&, octave_value const&)' from file
'libinterp/octave-value/.libs/liboctave-value.a(liboctave_value_la-cdef-object.o)'
to global weak symbol 'vtable for Array<octave::cdef_object>' from file
'libinterp/template-inst/.libs/liboctinterp_la-Array-tc.o' means the weak
symbol cannot be overridden at runtime. This was likely caused by different
translation units being compiled with different visibility settings.
2021-12-05T14:38:31.6044500Z ld: warning: direct access in function
'octave::cdef_object_array::array_value() const' from file
'libinterp/octave-value/.libs/liboctave-value.a(liboctave_value_la-cdef-object.o)'
to global weak symbol 'vtable for Array<octave::cdef_object>' from file
'libinterp/template-inst/.libs/liboctinterp_la-Array-tc.o' means the weak
symbol cannot be overridden at runtime. This was likely caused by different
translation units being compiled with different visibility settings.
2021-12-05T14:38:31.6049060Z ld: warning: direct access in function
'octave::cdef_object_array::cdef_object_array()' from file
'libinterp/octave-value/.libs/liboctave-value.a(liboctave_value_la-cdef-object.o)'
to global weak symbol 'vtable for Array<octave::cdef_object>' from file
'libinterp/template-inst/.libs/liboctinterp_la-Array-tc.o' means the weak
symbol cannot be overridden at runtime. This was likely caused by different
translation units being compiled with different visibility settings.
2021-12-05T14:38:31.6053750Z ld: warning: direct access in function
'octave::cdef_object_array::cdef_object_array(Array<octave::cdef_object>
const&)' from file
'libinterp/octave-value/.libs/liboctave-value.a(liboctave_value_la-cdef-object.o)'
to global weak symbol 'vtable for Array<octave::cdef_object>' from file
'libinterp/template-inst/.libs/liboctinterp_la-Array-tc.o' means the weak
symbol cannot be overridden at runtime. This was likely caused by different
translation units being compiled with different visibility settings.
2021-12-05T14:38:31.6059160Z ld: warning: direct access in function
'octave::cdef_object_array::cdef_object_array(octave::cdef_object_array
const&)' from file
'libinterp/octave-value/.libs/liboctave-value.a(liboctave_value_la-cdef-object.o)'
to global weak symbol 'vtable for Array<octave::cdef_object>' from file
'libinterp/template-inst/.libs/liboctinterp_la-Array-tc.o' means the weak
symbol cannot be overridden at runtime. This was likely caused by different
translation units being compiled with different visibility settings.


However, the tests shown in comment #42 are still failing when compiling with
visibility flags. They are passing when compiling without visibility flags.
They don't look related to the above warnings. But something is still off with
how we use visibility (at least on macOS).

    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?59820>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]