Add a New Comment (Rich Markup)
Comment Type & Canned Response: None None Please use the bug tracker for bugs
This has actually already been done in the current Octave release. Starting with version 5, mkoctfile only links with liboctinterp and liboctave, unless the user has built Octave with --enable-link-all-dependencies. So closing this because it's been obsoleted by default.
Currently, mkoctfile links mex/oct files to every external dependency that Octave is built with. Strictly speaking, most if not all of these dependencies will be unnecessary for many mex files; and linking to them may make the resulting binary non-portable. (And see the bug report I've filed where mkoctfile is failing because it forgets to include a library path to X11 libraries; how many mex/oct files need X11?)
I have created a "--minimal-dependencies" option that, when used, causes mkoctfile to link only to liboctave and libinterp. If the user wishes to link to other libraries, it will be his/her responsibility. This is actually the default behavior with Matlab---even if you want to use the built-in BLAS or LAPACK you have to add the -lblas and -llapack flags yourself.
I've built and tested 36 mex files with this option engaged for CVX, including code that externally links to the Mac's BLAS. Adopting this approach, even as an option if not the default, should make it easier for people to build and distribute Octave mex/oct files in binary form.
I'm not wedded to the long option name by the way.
(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)
Attach Files: Comment:
Depends on the following items: None found
Items that depend on this one: None found
There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.
Only logged-in users can vote.
Please enter the title of George Orwell's famous dystopian book (it's a date):
Follow 4 latest changes.
Copyright © 2022 Free Software Foundation, Inc. Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved. The Levitating, Meditating, Flute-playing Gnu logo is a GNU GPL'ed image provided by the Nevrax Design Team. Source Code
Powered by Savane 3.9