ERRORS: rpm.spec
Jeffrey Johnson
n3npq at me.com
Tue Jan 10 18:03:25 CET 2017
> On Jan 10, 2017, at 11:44 AM, Elan Ruusamäe <glen at pld-linux.org> wrote:
>
> On 10.01.2017 18:38, Jeffrey Johnson wrote:
>>> On Jan 10, 2017, at 11:35 AM, Elan Ruusamäe <glen at pld-linux.org> wrote:
>>>
>>> On 10.01.2017 18:28, Jeffrey Johnson wrote:
>>>> Add —without-java to configure will disable no matter what the default is.
>>> ./rpmio/Makefile.am compiles rpmjni.cc with no conditions. at least 5.4.15
>>>
>> The configure option —without-java is known to work in CVS and in rpm-5.4.17.
>
> same error as with 5.4.15, rpmjni.cc is compiled unconditionally (checked sources),
> rpm-5.4.17/rpmio/Makefile.am line 201
>
Yes rpmjni.cc is compiled unconditionally so that wrapper symbols are constant in libraries
identical to every other rpmXY wrapping.
Meanwhile — if WITH_JNI_EMBED is undefined — you end up with an empty pool allocation
(empty == the JVM is not instantiated, bean shell isn’t loaded, any/all calls return error).
> so if you try with gcc6 you should be getting same error.
>
Currently with CVS
$ rpm -q gcc
gcc-6.3.1-1.fc26.x86_64
and (AFAIR) gcc6 was used on rpm-5.4.17 (see 5.4.17 INSTALLATION for tools used).
Adding
#undef WITH_JNIEMBED
at top of rpmio/rpmjni.cc SHOULD disable JVM no matter what.
The other way to eliminate is to remove the pool deallocations in rpmio/rpmio.c rpmioClean()
by commenting out
RPMIOPOOL_INTERP_FREE(js)
RPMIOPOOL_INTERP_FREE(jni)
to address your reported failures
skipping rpmjni.cc <http://rpmjni.cc/> from makefile of course yields linking error:
./.libs/librpmio.so: undefined reference to `_rpmjniI'
./.libs/librpmio.so: undefined reference to `_rpmjniPool'
collect2: error: ld returned 1 exit status
as those are just artifacts used to clean up allocations of the empty rpmjni wrapper.
>>
>> Meanwhile:
>> What is the issue here?
>> Do you want embedded java or wish java cleanly disabled?
>
> i wished to rebuild rpm with tiny patch, but gcc errors in totally unrelated file due gcc 6 on builders.
>
> https://github.com/pld-linux/rpm/commit/e9576b98b1c166be5e164c20df8d8659bb0431be
>
> there shouldn't be any sniff of java/jvm in rpm binary in pld.
>
So you don’t want RPM+JAVA.
73 de Jeff
More information about the pld-devel-en
mailing list