* Arjen Markus <arjen.mar...@deltares.nl> [2022-12-29 13:32]:
I am currently trying to incorporate the patches you sent, but I am running
into a problem with Octave. Here is the start of a whole series of error
messages:
[ 16%] Swig compile plplot_octave.i for octave
[ 16%] Built target plplot_octave_swig_compilation
[ 17%] Building CXX object
bindings/octave/CMakeFiles/plplot_octave.dir/plplot_octaveOCTAVE_wrap.cxx.o
/cygdrive/d/plplot-svn/build-cygwin/bindings/octave/plplot_octaveOCTAVE_wrap.cxx:1768:31:
error: ‘oct_mach_info’ has not been declared
1768 | oct_mach_info::float_format fmt) {
| ^~~~~~~~~~~~~
/cygdrive/d/plplot-svn/build-cygwin/bindings/octave/plplot_octaveOCTAVE_wrap.cxx:1768:59:
error: expected ‘,’ or ‘...’ before ‘fmt’
1768 | oct_mach_info::float_format fmt) {
| ^~~
/cygdrive/d/plplot-svn/build-cygwin/bindings/octave/plplot_octaveOCTAVE_wrap.cxx:
In member function ‘octave_value_list
octave_swig_type::member_deref(octave_swig_type::member_value_pair*, const
octave_value_list&)’:
/cygdrive/d/plplot-svn/build-cygwin/bindings/octave/plplot_octaveOCTAVE_wrap.cxx:1044:94:
error: invalid new-expression of abstract class type ‘octave_swig_bound_func’
1044 | #define SWIG_OCTAVE_BOUND_FUNC(func, args) octave_value(new
octave_swig_bound_func(func, args))
|
^
/
I have no idea how to solve this, so I am hoping you or somebody else familiar
with Octave and SWIG can give me a few pointers, or better still, a patch to
solve this.
For your information:
- SWIG: version 4.0.2
- Octave: version 6.4.0
- I am building this under Cygwin with all the packages updated to the current
versions.
It works for me with these versions:
- SWIG 4.1.0
- Octave 7.3.0
Could you please test with them?
By the way, under Cygwin I do not seem to have a useable Ada compiler,
so I cannot test the changes that you and Nicolas suggested. But to
keep them in line with the rest, I have now implemented the building of
the static library as:
if(ENABLE_ada_static)
set(ADA_lib_type "STATIC")
else(ENABLE_ada_static)
set(ADA_lib_type "")
endif(ENABLE_ada_static)
# target_link_libraries used in special way below so avoid using it inside
configure_library_build.
configure_library_build(plplotada ${ADA_lib_type} "${plplotada_BODY_SRCS}" ""
"${LIB_INSTALL_RPATH}")
so that, if you add the option "-DENABLE_ada_static=ON" to the CMake command
line you will get the static library. So, there will be either a static or a dynamic
(shared) library.
I have not checked in these changes yet, but this is what I intend to do.
The ideal situation would be to allow users to enable both static and
dynamic, if they wish so. Is this what you are intending to do?
Best,
Rafael
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel