[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Octave-bug-tracker] [bug #60016] libqhull was deprecated in favor of li
From: |
Markus Mützel |
Subject: |
[Octave-bug-tracker] [bug #60016] libqhull was deprecated in favor of libqhull_r |
Date: |
Fri, 7 May 2021 11:58:32 -0400 (EDT) |
User-agent: |
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Safari/537.36 Edg/90.0.818.51 |
Update of bug #60016 (project octave):
Status: Patch Reviewed => In Progress
_______________________________________________________
Follow-up Comment #17:
I rebased the patch to the latest default branch. That needed quite a few
manual changes. (I hope I got those right. See attachment.)
When I compile with that patch with gcc 10 on Ubuntu 20.10 (libqhull-r8.0
2020.1-2), I see loads of warnings for each time the qhT structure is
initialized:
../libinterp/dldfcn/convhulln.cc: In function ‘octave_value_list
Fconvhulln(const octave_value_list&, int)’:
../libinterp/dldfcn/convhulln.cc:174:21: warning: missing initializer for
member ‘qhT::ALLOWshort’ [-Wmissing-field-initializers]
174 | qhT context = { 0 };
| ^
../libinterp/dldfcn/convhulln.cc:174:21: warning: missing initializer for
member ‘qhT::ALLOWwarning’ [-Wmissing-field-initializers]
../libinterp/dldfcn/convhulln.cc:174:21: warning: missing initializer for
member ‘qhT::ALLOWwide’ [-Wmissing-field-initializers]
../libinterp/dldfcn/convhulln.cc:174:21: warning: missing initializer for
member ‘qhT::ANGLEmerge’ [-Wmissing-field-initializers]
../libinterp/dldfcn/convhulln.cc:174:21: warning: missing initializer for
member ‘qhT::APPROXhull’ [-Wmissing-field-initializers]
../libinterp/dldfcn/convhulln.cc:174:21: warning: missing initializer for
member ‘qhT::MINoutside’ [-Wmissing-field-initializers]
../libinterp/dldfcn/convhulln.cc:174:21: warning: missing initializer for
member ‘qhT::ANNOTATEoutput’ [-Wmissing-field-initializers]
../libinterp/dldfcn/convhulln.cc:174:21: warning: missing initializer for
member ‘qhT::ATinfinity’ [-Wmissing-field-initializers]
../libinterp/dldfcn/convhulln.cc:174:21: warning: missing initializer for
member ‘qhT::AVOIDold’ [-Wmissing-field-initializers]
../libinterp/dldfcn/convhulln.cc:174:21: warning: missing initializer for
member ‘qhT::BESToutside’ [-Wmissing-field-initializers]
../libinterp/dldfcn/convhulln.cc:174:21: warning: missing initializer for
member ‘qhT::CDDinput’ [-Wmissing-field-initializers]
[...]
Is it ok to leave all of those member fields uninitialized? Or should we do
something different?
The tests for convhulln.oct are failing:
>>>>> processing
/home/osboxes/Documents/Repositories/Octave/octave-1/.build/libinterp/dldfcn/convhulln.cc-tst
***** testif HAVE_QHULL
cube = [0 0 0;1 0 0;1 1 0;0 1 0;0 0 1;1 0 1;1 1 1;0 1 1];
[h, v] = convhulln (cube, "Qt");
assert (size (h), [12 3]);
h = sortrows (sort (h, 2), [1:3]);
assert (h, [1 2 4; 1 2 6; 1 4 8; 1 5 6; 1 5 8; 2 3 4; 2 3 7; 2 6 7; 3 4 7; 4
7 8; 5 6 7; 5 7 8]);
assert (v, 1, 10*eps);
[h2, v2] = convhulln (cube); # Test default option = "Qt"
assert (size (h2), size (h));
h2 = sortrows (sort (h2, 2), [1:3]);
assert (h2, h);
assert (v2, v, 10*eps);
!!!!! test failed
/home/osboxes/Documents/Repositories/Octave/octave-1/.build/libinterp/dldfcn/convhulln.oct:
failed to load:
/home/osboxes/Documents/Repositories/Octave/octave-1/.build/libinterp/dldfcn/convhulln.oct:
undefined symbol: qh_facet3vertex
***** testif HAVE_QHULL
cube = [0 0 0;1 0 0;1 1 0;0 1 0;0 0 1;1 0 1;1 1 1;0 1 1];
[h, v] = convhulln (cube, "QJ");
assert (size (h), [12 3]);
assert (sortrows (sort (h, 2), [1:3]), [1 2 4; 1 2 5; 1 4 5; 2 3 4; 2 3 6; 2
5 6; 3 4 8; 3 6 7; 3 7 8; 4 5 8; 5 6 8; 6 7 8]);
assert (v, 1.0, 1e6*eps);
!!!!! test failed
/home/osboxes/Documents/Repositories/Octave/octave-1/.build/libinterp/dldfcn/convhulln.oct:
failed to load:
/home/osboxes/Documents/Repositories/Octave/octave-1/.build/libinterp/dldfcn/convhulln.oct:
undefined symbol: qh_facet3vertex
***** testif HAVE_QHULL
tetrahedron = [1 1 1;-1 -1 1;-1 1 -1;1 -1 -1];
[h, v] = convhulln (tetrahedron);
h = sortrows (sort (h, 2), [1 2 3]);
assert (h, [1 2 3;1 2 4; 1 3 4; 2 3 4]);
assert (v, 8/3, 10*eps);
!!!!! test failed
/home/osboxes/Documents/Repositories/Octave/octave-1/.build/libinterp/dldfcn/convhulln.oct:
failed to load:
/home/osboxes/Documents/Repositories/Octave/octave-1/.build/libinterp/dldfcn/convhulln.oct:
undefined symbol: qh_facet3vertex
***** testif HAVE_QHULL
triangle = [0 0; 1 1; 1 0; 1 2];
h = convhulln (triangle);
assert (size (h), [3 2]);
!!!!! test failed
/home/osboxes/Documents/Repositories/Octave/octave-1/.build/libinterp/dldfcn/convhulln.oct:
failed to load:
/home/osboxes/Documents/Repositories/Octave/octave-1/.build/libinterp/dldfcn/convhulln.oct:
undefined symbol: qh_facet3vertex
Similar errors about undefined symbols for "test convhull", "test delaunay",
"test delaunayn", "test griddata", "test griddata3", "test griddatan", and
"test voronoi".
It looks like it might be a little more involved to switch to using
libqhull_r. Some functions seem to no longer exist in the reentrant version of
the library (or they have been renamed?).
@Stefan: When those issues are fixed, would you like to be added to the list
of contributors that appears at the beginning of the manual?
(file #51399)
_______________________________________________________
Additional Item Attachment:
File name: bug60016-qhull-reentrant-v3.patch Size:17 KB
<https://file.savannah.gnu.org/file/bug60016-qhull-reentrant-v3.patch?file_id=51399>
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?60016>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
- [Octave-bug-tracker] [bug #60016] libqhull was deprecated in favor of libqhull_r,
Markus Mützel <=
- [Octave-bug-tracker] [bug #60016] libqhull was deprecated in favor of libqhull_r, Rik, 2021/05/07
- [Octave-bug-tracker] [bug #60016] libqhull was deprecated in favor of libqhull_r, Stefan Brüns, 2021/05/07
- [Octave-bug-tracker] [bug #60016] libqhull was deprecated in favor of libqhull_r, Stefan Brüns, 2021/05/07
- [Octave-bug-tracker] [bug #60016] libqhull was deprecated in favor of libqhull_r, Rik, 2021/05/07
- [Octave-bug-tracker] [bug #60016] libqhull was deprecated in favor of libqhull_r, Markus Mützel, 2021/05/07
- [Octave-bug-tracker] [bug #60016] libqhull was deprecated in favor of libqhull_r, Markus Mützel, 2021/05/07
- [Octave-bug-tracker] [bug #60016] libqhull was deprecated in favor of libqhull_r, Mike Miller, 2021/05/07
- [Octave-bug-tracker] [bug #60016] libqhull was deprecated in favor of libqhull_r, Rik, 2021/05/07
- [Octave-bug-tracker] [bug #60016] libqhull was deprecated in favor of libqhull_r, Markus Mützel, 2021/05/08
- [Octave-bug-tracker] [bug #60016] libqhull was deprecated in favor of libqhull_r, Rik, 2021/05/08