octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Java support in MXE build


From: PhilipNienhuis
Subject: Re: Java support in MXE build
Date: Tue, 2 Jul 2013 13:38:58 -0700 (PDT)

Michael Goffioul wrote
> On Tue, Jul 2, 2013 at 7:09 AM, PhilipNienhuis <

> pr.nienhuis@

> >wrote:
> 
>> >>> ./usr/bin/i686-pc-mingw32-nm
>> >>> tmp-octave/octave-3.7.5/.build/libinterp/.libs/liboctinterp.dll.a |
>> grep
>> >>> '
>> >>> T '
>> >>>
>> >>
>> >> Yes. I got the following output:
>> >>
>> >> 00000000 T address@hidden
>> >> 00000000 T address@hidden
>> >> 00000000 T address@hidden
>> >> 00000000 T address@hidden
>> >> 00000000 T address@hidden
>> >>
>> >>
>> > Ok, I think I figured out the issue. This is better explained here [1].
>> > Basically, the linker export all symbols by default. When
>> > --export-all-symbols is not explicitly given on the command line, it
>> may
>> > not export all symbols if some symbols are marked with dllexport. And
>> this
>> > is the case when you enable Java support, through the JNIEXPORT macro
>> in
>> > ov-java.cc. As a result, you end up with a DLL where *only* the JNI
>> > functions are exported.
>>
>> Note that the same happens when llvm is enabled (with the --enable-jit
>> configure option in MXE builds).
>> I described this as well in the original post on the maintainers ML.
>>
>> So, does llvm also have macros stripping out these linker flags?
>>
> 
> Note that it's not stripping linker flags. In the case of Java, it's just
> the linker behaving differently when it sees dllexport in the object files
> (it doesn't do automatic symbol export). For LLVM, I'm not sure. Try to
> run
> the "nm" command above to see what symbols are exported by
> liboctinterp.dll.a.

By the end of the week I might have time for this.
But I expect similar outcome as for Java, as IIRC I got exactly the same
errors when building with llvm and no Java support, as when building with
Java support and no llvm.

Philip



--
View this message in context: 
http://octave.1599824.n4.nabble.com/Java-support-in-MXE-build-tp4652996p4655132.html
Sent from the Octave - Maintainers mailing list archive at Nabble.com.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]