LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   Trying to compile Openoffice 2.0 beta (https://www.linuxquestions.org/questions/linux-software-2/trying-to-compile-openoffice-2-0-beta-353359/)

DaneM 08-15-2005 02:45 AM

Trying to compile Openoffice 2.0 beta
 
Hi, everybody. I FINALLY managed to find the source code for openoffice 2.0 beta, but I have no idea how to compile it; it has no Makefiles! (Edit: ok, so there are a few, but not in any logical place. Same with configure files.) Does anybody know how I'm supposed to do this? (Yes, I'm bent on compiling it from source.)

Thanks!

--Dane

ghrellin 08-15-2005 03:55 AM

Can you post where the configure files are? e.g. /home/dane/OpenOffice2Source/foo/configure.

DaneM 08-15-2005 04:34 AM

Sure.

~/tmp/OOo/odk/configure
~/tmp/OOo/dmake/configure
~/tmp/OOo/config_office/configure

Thanks!

(~ = /home/dane)

ghrellin 08-15-2005 10:46 AM

Why are they in ~/tmp/Oo? Did you make ~/tmp, then unpack it, or did the tarball create the tmp directory? Also, can you post the results of running each configure?

DaneM 08-17-2005 02:44 AM

Thanks for the reply!

The reason the source code is in that directory is because that's where I decompressed it to. Here's some ./configure output.

Code:

<~/tmp/OOo/config_office>
[dane@Orchestrator config_office]$ ./configure
********************************************************************
*                                                                  *
*  OpenOffice.org build configuration.                            *
*                                                                  *
*  The configure proces checks your platform to see whether      *
*  you can build OpenOffice.org on it.                            *
*  This proces checks all pre-requisites and generates a file    *
*  containing the necessary environment variables.                *
*  Source this file after configure has ended successfully.      *
*                                                                  *
*  Any warning that is generated during the configure process    *
*  must be taken into account, since it can be a reason for      *
*  an unsuccessful build of OpenOffice.org                        *
*                                                                  *
********************************************************************

********************************************************************
*                                                                  *
*  Checking the platform pre-requisites.                          *
*                                                                  *
********************************************************************

checking for gawk... gawk
checking for gawk... /bin/gawk
checking for sed... /bin/sed
checking for solenv environment... default
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
checking whether to enable crashdump feature... no
checking whether to do a debug build... no
checking whether to build with additional debug utilities... no, full product build
checking whether to include symbols into final build... no
checking whether to enable native CUPS support... yes
checking whether to enable fontconfig support... yes
checking whether to enable filters for legacy binary file formats (StarOffice 5.2)... yes
checking whether to use RPATH in shared libraries... yes
checking whether to include MySpell dictionaries... yes
checking which shell to use... tcsh
checking for tcsh... /bin/tcsh
checking gcc home... /usr
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for gcc... /usr/bin/gcc
checking the GNU gcc compiler version... checked (gcc 3.3.4)
checking whether gcc supports -fvisibility=hidden... no
checking for GNU make... make
checking the GNU make version... make 3.80
checking how to run the C preprocessor... gcc -E
checking for egrep... grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking cups/cups.h usability... yes
checking cups/cups.h presence... yes
checking for cups/cups.h... yes
checking security/pam_appl.h usability... no
checking security/pam_appl.h presence... no
checking for security/pam_appl.h... no
configure: error: pam_appl.h could not be found. libpam-dev or pam-devel missing?
<~/tmp/OOo/config_office>
[dane@Orchestrator config_office]$

This looks to me like the right one. The problem is that it requires PAM, which I've been having a hard time installing. Here's the 'make' output for PAM 0.80.

Code:

~snip~
make[2]: Leaving directory `/home/dane/tmp/Linux-PAM-0.80/modules/pam_wheel'
make[2]: Entering directory `/home/dane/tmp/Linux-PAM-0.80/modules/pam_xauth'
mkdir -p ./dynamic
gcc -Wall -Wwrite-strings      -Wpointer-arith -Wcast-qual -Wcast-align        -Wstrict-prototypes -Wmissing-prototypes      -Wnested-externs -Winline -Wshadow -Dlinux -g -O2  -I./include -I/home/dane/tmp/Linux-PAM-0.80/libpam/include -I/home/dane/tmp/Linux-PAM-0.80 -I/home/dane/tmp/Linux-PAM-0.80/libpamc/include  -fPIC -I../pammodutil/include -DPAM_DYNAMIC  -c pam_xauth.c -o dynamic/pam_xauth.o
gcc -shared  -o pam_xauth.so dynamic/pam_xauth.o  -lc -L../pammodutil -lpammodutil -L../../libpam -lpam
make[2]: Leaving directory `/home/dane/tmp/Linux-PAM-0.80/modules/pam_xauth'
make[1]: Leaving directory `/home/dane/tmp/Linux-PAM-0.80/modules'
make -C doc all
make[1]: Entering directory `/home/dane/tmp/Linux-PAM-0.80/doc'
Building module text from files in modules/*.sgml
Processing file ../pam
/usr/bin/nsgmls: error while loading shared libraries: libstdc++-libc6.2-2.so.3: cannot open shared object file: No such file or directory
SGML parsing error - exiting at /usr/lib/sgml-tools/SGMLTools.pm line 394.
make[1]: *** [html/pam.html] Error 1
make[1]: Leaving directory `/home/dane/tmp/Linux-PAM-0.80/doc'
make: *** [doc] Error 2
<~/tmp/Linux-PAM-0.80>
[dane@Orchestrator Linux-PAM-0.80]$

Any more ideas?

Thanks!

--Dane

ghrellin 08-17-2005 11:49 AM

I agree that you need pam. Have you tried looking for the libstdc++ error on google?

DaneM 08-22-2005 05:31 AM

Thanks for the reply.

I (at length) managed to install pam and the other required stuff (I think) via rpm2tgz, source, etc. Now I get this:

Code:

BUILD FAILED
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/build.xml:176: Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK

Total time: 2 seconds
dmake:  Error code 1, while making 'ANTBUILD'
'---* tg_merge.mk *---'
dmake:  Error code 255, while making './unxlngi4.pro/misc/build/so_built_ooo_beanshell'
'---* tg_merge.mk *---'

ERROR: Error 65280 occurred while making /home/dane/tmp/OOo/beanshell

Perhaps it's due to the warnings in ./configure. Here they are:

Code:

<~/tmp/OOo/config_office>
[dane@Orchestrator config_office]$ ./configure | grep -i warning
*  Any warning that is generated during the configure process    *
configure: WARNING: JAVA_HOME was not explicitly informed with --with-jdk-home. the configure script
configure: WARNING: attempted to find JAVA_HOME automatically, but apparently it failed
configure: WARNING: in case JAVA_HOME is incorrectly set, some projects with not be built correctly
configure: WARNING: X11/extensions/Xinerama.h: present but cannot be compiled
configure: WARNING: X11/extensions/Xinerama.h:    check for missing prerequisite headers?
configure: WARNING: X11/extensions/Xinerama.h: see the Autoconf documentation
configure: WARNING: X11/extensions/Xinerama.h:    section "Present But Cannot Be Compiled"
configure: WARNING: X11/extensions/Xinerama.h: proceeding with the preprocessor's result
configure: WARNING: X11/extensions/Xinerama.h: in the future, the compiler will take precedence
configure: WARNING:    ## ------------------------------------------ ##
configure: WARNING:    ## Report this to the AC_PACKAGE_NAME lists.  ##
configure: WARNING:    ## ------------------------------------------ ##
configure: WARNING: Ant does not work - Some Java projects will not build!
Use of uninitialized value in concatenation (.) or string at ./set_soenv line 905.
* ignore any warning message that were generated during this configuration
***** WARNINGS ISSUED *****

In case anybody else wants to try this (please??), here are the things I needed to install to get to this point:

perl-Archive-Zip (source rpm - rpm2targz)
perl-zlib (source rpm - rpm2targz)
Apache Ant (source)
Mozilla libraries (LINUXGCC{inc,lib,runtime}.zip , put into the moz directory) (from http://tools.openoffice.org/moz_prebuild/680/)

Thanks and good luck should you try this at home!

--Dane

ghrellin 08-22-2005 06:33 PM

It appears that the problem is that you don't have a java compiler (javac) installed. I'm not quite sure what the RPM is called, but probably look for something like javac-[version] and try again.

DaneM 08-23-2005 07:57 PM

Thanks for the reply.

I do have javac installed and set into the PATH, but I suppose it's possible that OOo is having a hard time find it. Here's the info on javac:

Code:

<~/tmp/wrt54g>
[dane@Orchestrator wrt54g]$ which javac
/usr/lib/jdk1.5.0_01/bin/javac
<~/tmp/wrt54g>
[dane@Orchestrator wrt54g]$ whereis javac
javac:

Have a good day.

--Dane

ghrellin 08-23-2005 08:12 PM

Looking back over your post, it looks like it can't find the JDK. Can you try compiling with the $JAVA_HOME variable set to wherever you installed the JDK?

EDIT: Make sure that tools.jar is in the $JAVA_HOME dir (or a subdir, maybe).

DaneM 08-24-2005 03:17 AM

I've been going by the instructions at http://tools.openoffice.org/dev_docs/build_linux.html and it says to use tcsh. How do I set the variables in tcsh?

Thanks.

--Dane

ghrellin 08-24-2005 09:52 AM

Google is your friend. :) Seriously, finding out how to set the variables in any of the commonly used shells (bash, zsh, tcsh, csh) is easily found over the internet.

DaneM 08-24-2005 03:53 PM

I did some googling and I think I set the variables correctly. (I edited LinuxIntelEnv.Set accordingly and sourced it.) Now I get these errors:

Code:

Compiling 143 source files to /home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/classes
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/BshMethod.java:306: warning: [deprecation] getAssignableForm(java.lang.Object,java.lang.Class) in bsh.Types has been deprecated
                                        argValues[i] = Types.getAssignableForm(
                                                            ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/BshMethod.java:387: warning: [deprecation] getAssignableForm(java.lang.Object,java.lang.Class) in bsh.Types has been deprecated
                                ret = Types.getAssignableForm( ret, (Class)returnType );
                                          ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/BSHEnhancedForStatement.java:66: warning: [deprecation] setTypedVariable(java.lang.String,java.lang.Class,java.lang.Object,boolean) in bsh.NameSpace has been deprecated
                                eachNameSpace.setTypedVariable(
                                            ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/BSHPrimarySuffix.java:193: warning: [deprecation] getAssignableForm(java.lang.Object,java.lang.Class) in bsh.Types has been deprecated
                                indexVal = Types.getAssignableForm( indexVal, Integer.TYPE);
                                                ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/BSHTryStatement.java:123: warning: [deprecation] getAssignableForm(java.lang.Object,java.lang.Class) in bsh.Types has been deprecated
                                                thrown = (Throwable)Types.getAssignableForm(
                                                                        ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/BSHTryStatement.java:151: warning: [deprecation] setTypedVariable(java.lang.String,java.lang.Class,java.lang.Object,boolean) in bsh.NameSpace has been deprecated
                                                cbNameSpace.setTypedVariable(
                                                          ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:137: reference to Type is ambiguous, both class java.lang.reflect.Type in java.lang.reflect and class bsh.org.objectweb.asm.Type in bsh.org.objectweb.asm match
                this.superClassName = Type.getInternalName( superClass );
                                      ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:137: cannot find symbol
symbol  : method getInternalName(java.lang.Class)
location: interface java.lang.reflect.Type
                this.superClassName = Type.getInternalName( superClass );
                                          ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:185: reference to Type is ambiguous, both class java.lang.reflect.Type in java.lang.reflect and class bsh.org.objectweb.asm.Type in bsh.org.objectweb.asm match
                        interfaceNames[i]=Type.getInternalName( interfaces[i] );
                                          ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:185: cannot find symbol
symbol  : method getInternalName(java.lang.Class)
location: interface java.lang.reflect.Type
                        interfaceNames[i]=Type.getInternalName( interfaces[i] );
                                              ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:362: reference to Type is ambiguous, both class java.lang.reflect.Type in java.lang.reflect and class bsh.org.objectweb.asm.Type in bsh.org.objectweb.asm match
                                Type.getType(Object.class),
                                ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:362: cannot find symbol
symbol  : method getType(java.lang.Class<java.lang.Object>)
location: interface java.lang.reflect.Type
                                Type.getType(Object.class),
                                    ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:363: reference to Type is ambiguous, both class java.lang.reflect.Type in java.lang.reflect and class bsh.org.objectweb.asm.Type in bsh.org.objectweb.asm match
                                new Type [] {
                                    ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:364: reference to Type is ambiguous, both class java.lang.reflect.Type in java.lang.reflect and class bsh.org.objectweb.asm.Type in bsh.org.objectweb.asm match
                                        Type.getType(String.class),
                                        ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:364: cannot find symbol
symbol  : method getType(java.lang.Class<java.lang.String>)
location: interface java.lang.reflect.Type
                                        Type.getType(String.class),
                                            ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:365: reference to Type is ambiguous, both class java.lang.reflect.Type in java.lang.reflect and class bsh.org.objectweb.asm.Type in bsh.org.objectweb.asm match
                                        Type.getType(Object [].class),
                                        ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:365: cannot find symbol
symbol  : method getType(java.lang.Class<java.lang.Object[]>)
location: interface java.lang.reflect.Type
                                        Type.getType(Object [].class),
                                            ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:366: reference to Type is ambiguous, both class java.lang.reflect.Type in java.lang.reflect and class bsh.org.objectweb.asm.Type in bsh.org.objectweb.asm match
                                        Type.getType(Interpreter.class),
                                        ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:366: cannot find symbol
symbol  : method getType(java.lang.Class<bsh.Interpreter>)
location: interface java.lang.reflect.Type
                                        Type.getType(Interpreter.class),
                                            ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:367: reference to Type is ambiguous, both class java.lang.reflect.Type in java.lang.reflect and class bsh.org.objectweb.asm.Type in bsh.org.objectweb.asm match
                                        Type.getType(CallStack.class),
                                        ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:367: cannot find symbol
symbol  : method getType(java.lang.Class<bsh.CallStack>)
location: interface java.lang.reflect.Type
                                        Type.getType(CallStack.class),
                                            ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:368: reference to Type is ambiguous, both class java.lang.reflect.Type in java.lang.reflect and class bsh.org.objectweb.asm.Type in bsh.org.objectweb.asm match
                                        Type.getType(SimpleNode.class),
                                        ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:368: cannot find symbol
symbol  : method getType(java.lang.Class<bsh.SimpleNode>)
location: interface java.lang.reflect.Type
                                        Type.getType(SimpleNode.class),
                                            ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:369: reference to Type is ambiguous, both class java.lang.reflect.Type in java.lang.reflect and class bsh.org.objectweb.asm.Type in bsh.org.objectweb.asm match
                                        Type.getType(Boolean.TYPE)
                                        ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:369: cannot find symbol
symbol  : method getType(java.lang.Class<java.lang.Boolean>)
location: interface java.lang.reflect.Type
                                        Type.getType(Boolean.TYPE)
                                            ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/ClassGeneratorUtil.java:361: reference to Type is ambiguous, both class java.lang.reflect.Type in java.lang.reflect and class bsh.org.objectweb.asm.Type in bsh.org.objectweb.asm match
                        Type.getMethodDescriptor(
                        ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/Reflect.java:129: warning: [deprecation] getAssignableForm(java.lang.Object,java.lang.Class) in bsh.Types has been deprecated
                                tmpArgs[i] = Types.getAssignableForm( args[i], types[i] );
                                                  ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/Remote.java:143: warning: [deprecation] encode(java.lang.String) in java.net.URLEncoder has been deprecated
                sb.append( URLEncoder.encode( text ) );
                                    ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/util/AWTConsole.java:223: warning: [deprecation] getPeer() in java.awt.Component has been deprecated
                ((java.awt.peer.TextComponentPeer)getPeer()).setCaretPosition(
                                                  ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/util/AWTConsole.java:328: warning: [deprecation] show() in java.awt.Window has been deprecated
                f.show();
                ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/util/ClassBrowser.java:412: warning: [deprecation] show() in java.awt.Window has been deprecated
                f.show();
                ^
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/src/bsh/util/Util.java:83: warning: [deprecation] show() in java.awt.Window has been deprecated
        win.show();
          ^
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
20 errors
12 warnings

BUILD FAILED
/home/dane/tmp/OOo/beanshell/unxlngi4.pro/misc/build/BeanShell/build.xml:176: Compile failed; see the compiler error output for details.

Total time: 9 seconds
dmake:  Error code 1, while making 'ANTBUILD'
'---* tg_merge.mk *---'
dmake:  Error code 255, while making './unxlngi4.pro/misc/build/so_built_ooo_beanshell'
'---* tg_merge.mk *---'

ERROR: Error 65280 occurred while making /home/dane/tmp/OOo/beanshell

Thanks for your continued help!

--Dane

ghrellin 08-24-2005 04:43 PM

Which JDK do you have? running
Code:

java-config -J
should tell you; you can also use it to find out where your javac is (java-config -c) and which variables are set (java-config -g [VARIABLE])

DaneM 08-24-2005 08:13 PM

I was using jre 1.5.0, but I realized that I didn't have j2re or j2sdk installed! I went to ftp://mirrors.ibiblio.org/pub/mirror...1.4.2/i386/02/ and downloaded everything, changed the variables in LinuxIntelEnv.Set, and now it *seems* to be compiling! I'll let you all know how it turns out.

--Dane


All times are GMT -5. The time now is 02:14 PM.