Building gcj target.

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Building gcj target.

rnewson
Hi,

I'm having some problems building Lucene using GCJ.

I've appended some compiler output (there's lot more undefined references).

Does the gcj target work for anyone else?

I'm using Debian sarge with GCJ-3.4 with the following build command;

GCJ=gcj-3.4 GCJH=gcjh-3.4 GPLUSPLUS=g++-3.4 ant clean gcj

I have the following gcj related packages:

ii  gcj-3.4        3.4.3-13       The GNU compiler for Java(TM)
ii  libgcj-common  4.0.0-9        Java runtime library (common files)
ii  libgcj5        3.4.3-13       Java runtime library for use with gcj
ii  libgcj5-awt    3.4.3-13       AWT peer runtime libraries for use
with gcj
ii  libgcj5-common 3.4.3-13       Java runtime library for use with gcj
(jar f
ii  libgcj5-dev    3.4.3-13       Java development headers and static
library
ii  classpath      0.14-2         clean room standard Java libraries
ii  classpath-comm 0.14-2         architecture independent files

Errors below:

      [exec] gcj-3.4 -O3 -ffast-math  -fno-bounds-check -fno-store-check
-Dorg.apache.lucene.FSDirectory.class=org.apache.lucene.store.GCJDirectory
-Dorg.apache.lucene.SegmentReader.class=org.apache.lucene.index.GCJSegmentReader
-lstdc++ ../../build/lucene-demos-1.9-rc1-dev.a
../../build/gcj/lucene-gcj.a
../../build/gcj/org/apache/lucene/index/GCJTermDocs.o
../../build/gcj/org/apache/lucene/store/GCJIndexInput.o -o
../../build/indexFiles \
      [exec]          --main=org.apache.lucene.demo.IndexFiles
      [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0xde): In
function
`org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*>*)':
      [exec] : undefined reference to
`org::apache::lucene::store::FSDirectory::getDirectory(java::lang::String*,
bool)'
      [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0xe8): In
function
`org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*>*)':
      [exec] : undefined reference to
`org::apache::lucene::index::IndexReader::open(org::apache::lucene::store::Directory*)'
      [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0xf6): In
function
`org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*>*)':
      [exec] : undefined reference to
`org::apache::lucene::index::Term::class$'
      [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0x116): In
function
`org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*>*)':
      [exec] : undefined reference to
`org::apache::lucene::index::Term::Term(java::lang::String*,
java::lang::String*)'


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Building gcj target.

Andi Vajda-3

Lucene can be built with gcj but some patching is required. It is also a lot
easier to build Lucene with gcj from .class files than from .java sources.
See the PyLucene project at http://pylucene.osafoundation.org for more
information. PyLucene is a gcj-compiled Lucene wrapped by SWIG in order to
integrate it with Python.

The http://svn.osafoundation.org/pylucene/trunk/INSTALL and
     http://svn.osafoundation.org/pylucene/trunk/Makefile 
files should provide useful information.

Andi..

On Tue, 21 Jun 2005, Robert Newson wrote:

> Hi,
>
> I'm having some problems building Lucene using GCJ.
>
> I've appended some compiler output (there's lot more undefined references).
>
> Does the gcj target work for anyone else?
>
> I'm using Debian sarge with GCJ-3.4 with the following build command;
>
> GCJ=gcj-3.4 GCJH=gcjh-3.4 GPLUSPLUS=g++-3.4 ant clean gcj
>
> I have the following gcj related packages:
>
> ii  gcj-3.4        3.4.3-13       The GNU compiler for Java(TM)
> ii  libgcj-common  4.0.0-9        Java runtime library (common files)
> ii  libgcj5        3.4.3-13       Java runtime library for use with gcj
> ii  libgcj5-awt    3.4.3-13       AWT peer runtime libraries for use with gcj
> ii  libgcj5-common 3.4.3-13       Java runtime library for use with gcj (jar
> f
> ii  libgcj5-dev    3.4.3-13       Java development headers and static library
> ii  classpath      0.14-2         clean room standard Java libraries
> ii  classpath-comm 0.14-2         architecture independent files
>
> Errors below:
>
>     [exec] gcj-3.4 -O3 -ffast-math  -fno-bounds-check -fno-store-check
> -Dorg.apache.lucene.FSDirectory.class=org.apache.lucene.store.GCJDirectory
> -Dorg.apache.lucene.SegmentReader.class=org.apache.lucene.index.GCJSegmentReader
> -lstdc++ ../../build/lucene-demos-1.9-rc1-dev.a ../../build/gcj/lucene-gcj.a
> ../../build/gcj/org/apache/lucene/index/GCJTermDocs.o
> ../../build/gcj/org/apache/lucene/store/GCJIndexInput.o -o
> ../../build/indexFiles \
>     [exec]          --main=org.apache.lucene.demo.IndexFiles
>     [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0xde): In function
> `org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*>*)':
>     [exec] : undefined reference to
> `org::apache::lucene::store::FSDirectory::getDirectory(java::lang::String*,
> bool)'
>     [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0xe8): In function
> `org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*>*)':
>     [exec] : undefined reference to
> `org::apache::lucene::index::IndexReader::open(org::apache::lucene::store::Directory*)'
>     [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0xf6): In function
> `org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*>*)':
>     [exec] : undefined reference to
> `org::apache::lucene::index::Term::class$'
>     [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0x116): In function
> `org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*>*)':
>     [exec] : undefined reference to
> `org::apache::lucene::index::Term::Term(java::lang::String*,
> java::lang::String*)'
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Building gcj target.

rnewson

Thanks, that's helpful.

The ant target uses gcj to compile from both .java and .class files. It
also seems to specify particular compiler options which implies that it
*should* compile out of the box.

I'm keen to have this target working, so I'll hack on the Makefile for a
bit.

B.

p.s. I'm using the latest from HEAD.

Andi Vajda wrote:

>
> Lucene can be built with gcj but some patching is required. It is also a
> lot easier to build Lucene with gcj from .class files than from .java
> sources.
> See the PyLucene project at http://pylucene.osafoundation.org for more
> information. PyLucene is a gcj-compiled Lucene wrapped by SWIG in order
> to integrate it with Python.
>
> The http://svn.osafoundation.org/pylucene/trunk/INSTALL and
>     http://svn.osafoundation.org/pylucene/trunk/Makefile files should
> provide useful information.
>
> Andi..
>
> On Tue, 21 Jun 2005, Robert Newson wrote:
>
>> Hi,
>>
>> I'm having some problems building Lucene using GCJ.
>>
>> I've appended some compiler output (there's lot more undefined
>> references).
>>
>> Does the gcj target work for anyone else?
>>
>> I'm using Debian sarge with GCJ-3.4 with the following build command;
>>
>> GCJ=gcj-3.4 GCJH=gcjh-3.4 GPLUSPLUS=g++-3.4 ant clean gcj
>>
>> I have the following gcj related packages:
>>
>> ii  gcj-3.4        3.4.3-13       The GNU compiler for Java(TM)
>> ii  libgcj-common  4.0.0-9        Java runtime library (common files)
>> ii  libgcj5        3.4.3-13       Java runtime library for use with gcj
>> ii  libgcj5-awt    3.4.3-13       AWT peer runtime libraries for use
>> with gcj
>> ii  libgcj5-common 3.4.3-13       Java runtime library for use with
>> gcj (jar f
>> ii  libgcj5-dev    3.4.3-13       Java development headers and static
>> library
>> ii  classpath      0.14-2         clean room standard Java libraries
>> ii  classpath-comm 0.14-2         architecture independent files
>>
>> Errors below:
>>
>>     [exec] gcj-3.4 -O3 -ffast-math  -fno-bounds-check -fno-store-check
>> -Dorg.apache.lucene.FSDirectory.class=org.apache.lucene.store.GCJDirectory
>> -Dorg.apache.lucene.SegmentReader.class=org.apache.lucene.index.GCJSegmentReader
>> -lstdc++ ../../build/lucene-demos-1.9-rc1-dev.a
>> ../../build/gcj/lucene-gcj.a
>> ../../build/gcj/org/apache/lucene/index/GCJTermDocs.o
>> ../../build/gcj/org/apache/lucene/store/GCJIndexInput.o -o
>> ../../build/indexFiles \
>>     [exec]          --main=org.apache.lucene.demo.IndexFiles
>>     [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0xde): In
>> function
>> `org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*>*)':
>>
>>     [exec] : undefined reference to
>> `org::apache::lucene::store::FSDirectory::getDirectory(java::lang::String*,
>> bool)'
>>     [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0xe8): In
>> function
>> `org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*>*)':
>>
>>     [exec] : undefined reference to
>> `org::apache::lucene::index::IndexReader::open(org::apache::lucene::store::Directory*)'
>>
>>     [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0xf6): In
>> function
>> `org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*>*)':
>>
>>     [exec] : undefined reference to
>> `org::apache::lucene::index::Term::class$'
>>     [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0x116): In
>> function
>> `org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*>*)':
>>
>>     [exec] : undefined reference to
>> `org::apache::lucene::index::Term::Term(java::lang::String*,
>> java::lang::String*)'
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [hidden email]
>> For additional commands, e-mail: [hidden email]
>>
>>


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Building gcj target.

rnewson
In reply to this post by rnewson

Adding the jar file to the targets fixes the problem. This implies that
some things aren't getting compiled into the .a library.

# link together various applications
$(BUILD)/indexFiles: $(OBJ)
         $(GCJ) $(GCJFLAGS) $(PROPS) $(LIBS)
../../build/lucene-core-1.9-rc1-dev\.jar $^ -o $@ \
          --main=org.apache.lucene.demo.IndexFiles

$(BUILD)/searchFiles: $(OBJ)
         $(GCJ) $(GCJFLAGS) $(PROPS) $(LIBS)
../../build/lucene-core-1.9-rc1-dev\.jar $^ -o $@ \
          --main=org.apache.lucene.demo.SearchFiles

Robert Newson wrote:

> Hi,
>
> I'm having some problems building Lucene using GCJ.
>
> I've appended some compiler output (there's lot more undefined references).
>
> Does the gcj target work for anyone else?
>
> I'm using Debian sarge with GCJ-3.4 with the following build command;
>
> GCJ=gcj-3.4 GCJH=gcjh-3.4 GPLUSPLUS=g++-3.4 ant clean gcj
>
> I have the following gcj related packages:
>
> ii  gcj-3.4        3.4.3-13       The GNU compiler for Java(TM)
> ii  libgcj-common  4.0.0-9        Java runtime library (common files)
> ii  libgcj5        3.4.3-13       Java runtime library for use with gcj
> ii  libgcj5-awt    3.4.3-13       AWT peer runtime libraries for use
> with gcj
> ii  libgcj5-common 3.4.3-13       Java runtime library for use with gcj
> (jar f
> ii  libgcj5-dev    3.4.3-13       Java development headers and static
> library
> ii  classpath      0.14-2         clean room standard Java libraries
> ii  classpath-comm 0.14-2         architecture independent files
>
> Errors below:
>
>      [exec] gcj-3.4 -O3 -ffast-math  -fno-bounds-check -fno-store-check
> -Dorg.apache.lucene.FSDirectory.class=org.apache.lucene.store.GCJDirectory
> -Dorg.apache.lucene.SegmentReader.class=org.apache.lucene.index.GCJSegmentReader
> -lstdc++ ../../build/lucene-demos-1.9-rc1-dev.a
> ../../build/gcj/lucene-gcj.a
> ../../build/gcj/org/apache/lucene/index/GCJTermDocs.o
> ../../build/gcj/org/apache/lucene/store/GCJIndexInput.o -o
> ../../build/indexFiles \
>      [exec]          --main=org.apache.lucene.demo.IndexFiles
>      [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0xde): In
> function
> `org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*>*)':
>
>      [exec] : undefined reference to
> `org::apache::lucene::store::FSDirectory::getDirectory(java::lang::String*,
> bool)'
>      [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0xe8): In
> function
> `org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*>*)':
>
>      [exec] : undefined reference to
> `org::apache::lucene::index::IndexReader::open(org::apache::lucene::store::Directory*)'
>
>      [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0xf6): In
> function
> `org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*>*)':
>
>      [exec] : undefined reference to
> `org::apache::lucene::index::Term::class$'
>      [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0x116): In
> function
> `org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*>*)':
>
>      [exec] : undefined reference to
> `org::apache::lucene::index::Term::Term(java::lang::String*,
> java::lang::String*)'


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

RE: Re: Building gcj target.

McClean, John
In reply to this post by rnewson
You think there's going to be much in this? (I'm would assume in the
absence of actual knowledge, maybe the 20% we found on the CLucene
comparison, and probably a bit less.)

John

-----Original Message-----
From: news [mailto:[hidden email]] On Behalf Of Robert Newson
Sent: Tuesday, June 21, 2005 11:04 AM
To: [hidden email]
Subject: Re: Building gcj target.


Thanks, that's helpful.

The ant target uses gcj to compile from both .java and .class files. It
also seems to specify particular compiler options which implies that it
*should* compile out of the box.

I'm keen to have this target working, so I'll hack on the Makefile for a

bit.

B.

p.s. I'm using the latest from HEAD.

Andi Vajda wrote:
>
> Lucene can be built with gcj but some patching is required. It is also
a
> lot easier to build Lucene with gcj from .class files than from .java
> sources.
> See the PyLucene project at http://pylucene.osafoundation.org for more

> information. PyLucene is a gcj-compiled Lucene wrapped by SWIG in
order

> to integrate it with Python.
>
> The http://svn.osafoundation.org/pylucene/trunk/INSTALL and
>     http://svn.osafoundation.org/pylucene/trunk/Makefile files should
> provide useful information.
>
> Andi..
>
> On Tue, 21 Jun 2005, Robert Newson wrote:
>
>> Hi,
>>
>> I'm having some problems building Lucene using GCJ.
>>
>> I've appended some compiler output (there's lot more undefined
>> references).
>>
>> Does the gcj target work for anyone else?
>>
>> I'm using Debian sarge with GCJ-3.4 with the following build command;
>>
>> GCJ=gcj-3.4 GCJH=gcjh-3.4 GPLUSPLUS=g++-3.4 ant clean gcj
>>
>> I have the following gcj related packages:
>>
>> ii  gcj-3.4        3.4.3-13       The GNU compiler for Java(TM)
>> ii  libgcj-common  4.0.0-9        Java runtime library (common files)
>> ii  libgcj5        3.4.3-13       Java runtime library for use with
gcj
>> ii  libgcj5-awt    3.4.3-13       AWT peer runtime libraries for use
>> with gcj
>> ii  libgcj5-common 3.4.3-13       Java runtime library for use with
>> gcj (jar f
>> ii  libgcj5-dev    3.4.3-13       Java development headers and static

>> library
>> ii  classpath      0.14-2         clean room standard Java libraries
>> ii  classpath-comm 0.14-2         architecture independent files
>>
>> Errors below:
>>
>>     [exec] gcj-3.4 -O3 -ffast-math  -fno-bounds-check
-fno-store-check
>>
-Dorg.apache.lucene.FSDirectory.class=org.apache.lucene.store.GCJDirecto
ry
>>
-Dorg.apache.lucene.SegmentReader.class=org.apache.lucene.index.GCJSegme
ntReader
>> -lstdc++ ../../build/lucene-demos-1.9-rc1-dev.a
>> ../../build/gcj/lucene-gcj.a
>> ../../build/gcj/org/apache/lucene/index/GCJTermDocs.o
>> ../../build/gcj/org/apache/lucene/store/GCJIndexInput.o -o
>> ../../build/indexFiles \
>>     [exec]          --main=org.apache.lucene.demo.IndexFiles
>>     [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0xde): In
>> function
>>
`org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*
>*)':
>>
>>     [exec] : undefined reference to
>>
`org::apache::lucene::store::FSDirectory::getDirectory(java::lang::Strin
g*,
>> bool)'
>>     [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0xe8): In
>> function
>>
`org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*
>*)':
>>
>>     [exec] : undefined reference to
>>
`org::apache::lucene::index::IndexReader::open(org::apache::lucene::stor
e::Directory*)'
>>
>>     [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0xf6): In
>> function
>>
`org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*
>*)':
>>
>>     [exec] : undefined reference to
>> `org::apache::lucene::index::Term::class$'
>>     [exec] ../../build/lucene-demos-1.9-rc1-dev.a(.text+0x116): In
>> function
>>
`org::apache::lucene::demo::DeleteFiles::main(JArray<java::lang::String*

>*)':
>>
>>     [exec] : undefined reference to
>> `org::apache::lucene::index::Term::Term(java::lang::String*,
>> java::lang::String*)'
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [hidden email]
>> For additional commands, e-mail: [hidden email]
>>
>>


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Recall: Re: Building gcj target.

McClean, John
In reply to this post by rnewson
McClean, John would like to recall the message, " Re: Building gcj target.".