Porting to x86-64 (AMD64, EM64T)

From Apache OpenOffice Wiki
Revision as of 15:57, 15 December 2005 by Kendy (Talk | contribs)

Jump to: navigation, search

Current status

The x86-64 port is work in progress. It is not ready for use yet, but it compiles (with quite large set of patches), and performs basic operations. It is of no use for non-developers.

Help is appreciated, join the project! :-)

The work is based on ooo64bit02 Child Workspace (CWS), and most of the patches are committed back there now. The problem is that this CWS is too huge to be integrated - it would be an incredible task for the QA. The idea is to split it to smaller CWSes and get them integrated one by one.

More info:

How to get it

All the available and the most recent patches are in ooo-build; you can see them here. See the general Getting It, Building, Installing, Running sections for ooo-build.

Be sure to specify one of the 64bit distros (like NLD64, Debian64, etc.) during the ./configure time (--with-distro= configure switch), it will apply the 64bit patches then.

How to help


  • Compile it
  • Find a bug (crash, missing functionality, ...)
  • Fix it ;-) It might be either in the ooo-build patches, or up-stream
  • File the problem & the solution to the IssueZilla if it is up-stream, or send it to openoffice@lists.ximian.com if it is in the ooo-build patches
    • Ensure that you CC 'kendy' and 'pjanik' on the report to get a quick response
  • If the underlying problem is a new problem archetype - try to find & fix all other instances of it

The most important task now is to isolate fixes from ooo64bit02, and get them up-stream. Once the official OpenOffice.org builds on x86-64, it will be much easier to get more people involved, and to fix bugs more effectively.

The other task is to get it work with a JVM - for example with Sun Java 1.5.0 for x86-64, or any other.

Should you have questions, please contact kendy, martink, or paveljanik on IRC.

Java related issues during porting

  • First, remove the --without-java line in distro-config/NLD64.conf.in file, and give the option of --with-distro=NLD64 while configuring.
  • Encountered problem & solution
OSD Source tag Configuration Option Phenomenon Solution Note
SuSe9.3 m136 --with-distro=NLD64 --with-tag=src680-m136 xmlhelp module failed because the Berkeley DB 4.2 on suse9.3 doesn't have db.jar instlled, ie. the java option isn't turned on when the db42 rpm package is builded, and this causes some java programs which use the calss of com.sleepycat.db.Db fail. manually recompile the BerkeleyDB 4.2 with java option turned on and configure --with-db-jar=/usr/local/BerkeleyDB.4.2/lib/db.jar;remove the --with-system-db line in distro-config/NLD64.conf.in file; add /usr/local/BerkeleyDB.4.2/lib/db.jar to $CLASSPATH; finally re-configure the whole building process. BerkeleyDB.4.4 changed the API of java, please DON'T use the 4.4 version of Berkeley DB.
Personal tools