Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Otave deprecated fixes #11

Merged
merged 4 commits into from
Sep 2, 2020
Merged

Conversation

HinTak
Copy link
Contributor

@HinTak HinTak commented May 17, 2020

All the deprecated warnings against 4.x/5.x, except octave_main and clean_up_and_exit() . The warnings for those two just says "see manual for other options".

The actual message is:

warning: ‘octave_value_list feval(const string&, const octave_value_list&, int)’ is deprecated: [4.4]: use 'octave::feval' instead [-Wdeprecated-declarations]
The actual message:

warning: ‘bool octave_value::is_cell() const’ is deprecated: [4.4]: use 'iscell' instead [-Wdeprecated-declarations]
…ble::global_assign()

The message is:

warning: ‘void set_global_value(const string&, const octave_value&)’ is deprecated: [4.4]: use 'symbol_table::global_assign' instead [-Wdeprecated-declarations]
…ble::global_varval()

The message is:

warning: ‘octave_value get_global_value(const string&, bool)’ is deprecated: [4.4]: use 'symbol_table::global_varval' instead [-Wdeprecated-declarations]
@HinTak
Copy link
Contributor Author

HinTak commented Sep 2, 2020

@flatmax : ping - it has been a while. The last couple of warnings didn't look to have obvious replacements and I am unlikely to look into them any time soon, so this is okay to merge as is.

@flatmax flatmax merged commit 085e0ea into flatmax:master Sep 2, 2020
@flatmax
Copy link
Owner

flatmax commented Sep 2, 2020

Thanks for the ping, now merged.

@flatmax
Copy link
Owner

flatmax commented Sep 2, 2020

Nice work by the way!

@HinTak HinTak deleted the otave-deprecated-fixes branch September 2, 2020 21:27
@HinTak
Copy link
Contributor Author

HinTak commented Sep 2, 2020

Thanks!

@flatmax
Copy link
Owner

flatmax commented Sep 2, 2020

Have you noticed that the test/OctaveTest.C executable fails at the moment ?

@HinTak
Copy link
Contributor Author

HinTak commented Sep 2, 2020

Oh dear. I'll check.

@flatmax
Copy link
Owner

flatmax commented Sep 2, 2020

It may not be due to your patches.

@HinTak
Copy link
Contributor Author

HinTak commented Sep 2, 2020

Hmm, on fedora 32, it fails at:

...
make[2]: Entering directory '/tmp/gtkiostream/test'
...
libtool: link: g++ -g -O2 -o OptionParserTest OptionParserTest.o ...
...
/usr/bin/ld: OptionParserTest.o: relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIE
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:1650: OptionParserTest] Error 1
make[2]: Leaving directory '/tmp/gtkiostream/test'
make[1]: *** [Makefile:514: all-recursive] Error 1
make[1]: Leaving directory '/tmp/gtkiostream'
make: *** [Makefile:421: all] Error 2

But I see there is a mistake (not mine) in the compiling line, it is doing libtool: link: g++ -g -O2 -o OptionParserTest OptionParserTest.o ... -lgl2ps /usr/lib64/octave/5.2.0/liboctave.so -lcurl instead of libtool: link: g++ -g -O2 -o OptionParserTest OptionParserTest.o ... -lgl2ps -loctave -lcurl . This would have been something I did not see as I was doing the changes on a Pi / Raspbain (which has a much older octave, for better support of older versions). the -fPIE error is quite typical of x86_64. I'll see if I can quickly get around it and get further - you said it fails at the octave test (later)?

@flatmax
Copy link
Owner

flatmax commented Sep 2, 2020 via email

@HinTak
Copy link
Contributor Author

HinTak commented Sep 3, 2020

octave has a octave-config which works more or less like pkgconfig .

@flatmax
Copy link
Owner

flatmax commented Sep 3, 2020 via email

@HinTak
Copy link
Contributor Author

HinTak commented Sep 3, 2020

I did a fresh clone. Besides seeing #9 again (I need to hack at the Makefile to force gtk2, because it is detecting most my gtk3 stuff too), and the new -fPIE issue (which seems to be new - it is fairly generic but specific to x86_64 and only happens when things reaches a particular size, so it can suddenly appear when code sizes increases), I have finished compiling on fedora 32 against octave 5.2 .

The strange octiave library path I saiw seems to be a fedora mis-packaging - they shipped ./usr/lib64/octave/5.2.0/*.la, which seems to confuse libtool. I just moved them aside and it is fine.
.
So it seems to also compile and build fine here. I shall go and file the -fPIE issue now :-)

octave-config is unlikely to be an improvement on mkoctfile - since they must more-or-less give the same answers. I see their roles slightly different through - one is about how octave was built, the other is about how you like your (future) oct files to be built.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants