[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Octave-bug-tracker] [bug #47886] Do not link against libraries without
From: |
anonymous |
Subject: |
[Octave-bug-tracker] [bug #47886] Do not link against libraries without OpenGL |
Date: |
Tue, 10 May 2016 13:19:48 +0000 (UTC) |
User-agent: |
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/601.5.17 (KHTML, like Gecko) Version/9.1 Safari/601.5.17 |
URL:
<http://savannah.gnu.org/bugs/?47886>
Summary: Do not link against libraries without OpenGL
Project: GNU Octave
Submitted by: None
Submitted on: Tue 10 May 2016 01:19:47 PM UTC
Category: Configuration and Build System
Severity: 3 - Normal
Priority: 5 - Normal
Item Group: Build Failure
Status: None
Assigned to: None
Originator Name: Marcus
Originator Email: address@hidden
Open/Closed: Open
Discussion Lock: Any
Release: dev
Operating System: Any
_______________________________________________________
Details:
I maintain the development version of Octave for the MacPorts Project
<https://www.macports.org>.
We offer users the option of turning off support for FLTK or QT and plotting
with gnuplot.
Turning off FLTK or Qt is easy (--without-fltk or --without-qt).
Without FLTK and Qt, there seems to be no reason to link against OpenGL.
Indeed, there is code to that effect in configure.ac
if test $build_qt_graphics = no && test $build_fltk_graphics = no; then
opengl_graphics=no
else
opengl_graphics=yes
fi
Without OpenGL, there seems to be no need for GL2PS, Fontconfig, or FreeType
(or Xft or OSMesa, but they are not needed on OS X).
Turning off OpenGL is easy (--without-opengl), but there seems to be no way of
stopping configure.ac from looking for GL2PS, Fontconfig, or FreeType.
If the user happens to have these libraries, then Octave unnecessarily links
against them.
More problematic, if --without-opengl is given *and* GL2PS is found, then the
file
libinterp/corefcn/gl2ps-print.cc causes an error at link time
HAVE_GL2PS_H is 1, so glGetIntegerv and glRasterPos3d (and perhaps others) are
called but cannot be found since the OpenGL libraries are not linked in.
CXXLD libinterp/liboctinterp.la
clang: warning: argument unused during compilation: '-pthread'
clang: warning: argument unused during compilation: '-pthread'
Undefined symbols for architecture x86_64:
"_glGetIntegerv", referenced from:
gl2ps_renderer::draw_axes(axes::properties const&) in
libcorefcn.a(libinterp_corefcn_libcorefcn_la-gl2ps-print.o)
"_glRasterPos3d", referenced from:
gl2ps_renderer::render_text(std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> > const&, double,
double, double, int, int, double) in
libcorefcn.a(libinterp_corefcn_libcorefcn_la-gl2ps-print.o)
ld: symbol(s) not found for architecture x86_64
I am building with the latest development version on OS X version 10.11.4 with
the clang compiler, but I believe this issue would affect all users.
Attached is a proposed solution, but concerns were expressed about a previous
version <http://savannah.gnu.org/bugs/?47263>.
_______________________________________________________
File Attachments:
-------------------------------------------------------
Date: Tue 10 May 2016 01:19:47 PM UTC Name: patch-configure.diff Size: 5kB
By: None
<http://savannah.gnu.org/bugs/download.php?file_id=37119>
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?47886>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
- [Octave-bug-tracker] [bug #47886] Do not link against libraries without OpenGL,
anonymous <=