When I try to emerge openoffice-1.1.0-r2, it fails with following message: /var/tmp/portage/openoffice-1.1.0-r2/work/oo_1.1_src/odk/source/OOSupport javac -classpath .:../../unxlngi4.pro/class:/opt/sun-jdk-1.4.2.03/jre/lib/rt.jar:.:/var/tmp/portage/openoffice-1.1.0-r2/work/oo_1.1_src/solver/645/unxlngi4.pro/bin/ridl.jar:/var/tmp/portage/openoffice-1.1.0-r2/work/oo_1.1_src/solver/645/unxlngi4.pro/bin/juh.jar:/var/tmp/portage/openoffice-1.1.0-r2/work/oo_1.1_src/solver/645/unxlngi4.pro/bin/jurt.jar:/var/tmp/portage/openoffice-1.1.0-r2/work/oo_1.1_src/solver/645/unxlngi4.pro/bin/jarpackager.jar:/var/tmp/portage/openoffice-1.1.0-r2/work/oo_1.1_src/solver/645/unxlngi4.pro/bin/openide.jar:/var/tmp/portage/openoffice-1.1.0-r2/work/oo_1.1_src/solver/645/unxlngi4.pro/bin/jakarta-regexp-1.2.jar:/var/tmp/portage/openoffice-1.1.0-r2/work/oo_1.1_src/solver/645/unxlngi4.pro/bin/nbantext.jar:/var/tmp/portage/openoffice-1.1.0-r2/work/oo_1.1_src/solver/645/unxlngi4.pro/bin/jhall.jar -d ../../unxlngi4.pro/class org/netbeans/modules/openoffice/InstallationPanel.java org/netbeans/modules/openoffice/OOExtensionFilter.java org/netbeans/modules/openoffice/OOIDLCompiler.java org/netbeans/modules/openoffice/OOIDLCompilerGroup.java org/netbeans/modules/openoffice/OOIDLCompilerType.java org/netbeans/modules/openoffice/OOIDLCompilerTypeBeanInfo.java org/netbeans/modules/openoffice/OOIDLDataLoader.java org/netbeans/modules/openoffice/OOIDLDataObject.java org/netbeans/modules/openoffice/OOIDLGlobalSettings.java org/netbeans/modules/openoffice/OOIDLGlobalSettingsBeanInfo.java org/netbeans/modules/openoffice/OOIDLInstaller.java org/netbeans/modules/openoffice/OOREGCompiler.java org/netbeans/modules/openoffice/OOREGCompilerGroup.java org/netbeans/modules/openoffice/OOREGCompilerType.java org/netbeans/modules/openoffice/OOREGCompilerTypeBeanInfo.java org/netbeans/modules/openoffice/OOTools.java org/netbeans/modules/openoffice/OOURDCleanCompiler.java org/netbeans/modules/openoffice/OOURDCleanCompilerGroup.java org/netbeans/modules/openoffice/OOURDCompiler.java org/netbeans/modules/openoffice/OOURDCompilerGroup.java org/netbeans/modules/openoffice/OOURDCompilerType.java org/netbeans/modules/openoffice/OOURDCompilerTypeBeanInfo.java org/netbeans/modules/openoffice/OOURDDataLoader.java org/netbeans/modules/openoffice/OOURDDataLoaderBeanInfo.java org/netbeans/modules/openoffice/OOURDDataObject.java org/netbeans/modules/openoffice/wizard/IDLInterface.java org/netbeans/modules/openoffice/wizard/IDLMethod.java org/netbeans/modules/openoffice/wizard/IDLParameter.java org/netbeans/modules/openoffice/wizard/OOAddInCreateIterator.java org/netbeans/modules/openoffice/wizard/OOAddinData.java org/netbeans/modules/openoffice/wizard/OOIDLData.java org/netbeans/modules/openoffice/wizard/OOIDLWizardIterator.java org/netbeans/modules/openoffice/wizard/OOServiceCreateIterator.java org/netbeans/modules/openoffice/wizard/OOServiceData.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateAliasAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateAttributeAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateConstantAction.javaorg/netbeans/modules/openoffice/wizard/actions/idl/CreateConstantsAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateEnumAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateEnumEntryAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateExceptionAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateFwdDclAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateInterfaceAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateModuleAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateOperationAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateServiceAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateStructAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateStructMemberAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateUnionAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateUnionDefaultAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateUnionMemberAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateValueBoxAction.java org/netbeans/modules/openoffice/wizard/actions/idl/CreateValueTypeAction.java org/netbeans/modules/openoffice/wizard/actions/idl/DestroyAction.java org/netbeans/modules/openoffice/wizard/actions/idl/EditAction.java org/netbeans/modules/openoffice/wizard/actions/idl/RenameAction.java org/netbeans/modules/openoffice/wizard/keys/AliasKey.java org/netbeans/modules/openoffice/wizard/keys/AttributeKey.java org/netbeans/modules/openoffice/wizard/keys/BaseKey.java org/netbeans/modules/openoffice/wizard/keys/ConstKey.java org/netbeans/modules/openoffice/wizard/keys/EnumKey.java org/netbeans/modules/openoffice/wizard/keys/ForwardDclKey.java org/netbeans/modules/openoffice/wizard/keys/InterfaceKey.java org/netbeans/modules/openoffice/wizard/keys/NameKey.java org/netbeans/modules/openoffice/wizard/keys/OperationKey.java org/netbeans/modules/openoffice/wizard/keys/StructKey.java org/netbeans/modules/openoffice/wizard/keys/UnionMemberKey.java org/netbeans/modules/openoffice/wizard/keys/ValueFactoryKey.java org/netbeans/modules/openoffice/wizard/keys/ValueKey.java org/netbeans/modules/openoffice/wizard/nodes/AliasNode.java org/netbeans/modules/openoffice/wizard/nodes/AttributeNode.java org/netbeans/modules/openoffice/wizard/nodes/BaseNode.java org/netbeans/modules/openoffice/wizard/nodes/ConstantNode.java org/netbeans/modules/openoffice/wizard/nodes/ConstantsNode.java org/netbeans/modules/openoffice/wizard/nodes/EnumEntryNode.java org/netbeans/modules/openoffice/wizard/nodes/EnumNode.java org/netbeans/modules/openoffice/wizard/nodes/ExceptionNode.java org/netbeans/modules/openoffice/wizard/nodes/ForwardDcl.java org/netbeans/modules/openoffice/wizard/nodes/IDLBaseChildren.java org/netbeans/modules/openoffice/wizard/nodes/IdlFileNode.java org/netbeans/modules/openoffice/wizard/nodes/InterfaceNode.java org/netbeans/modules/openoffice/wizard/nodes/LeafNode.java org/netbeans/modules/openoffice/wizard/nodes/ModuleNode.java org/netbeans/modules/openoffice/wizard/nodes/MovableNode.java org/netbeans/modules/openoffice/wizard/nodes/OperationNode.java org/netbeans/modules/openoffice/wizard/nodes/SENode.java org/netbeans/modules/openoffice/wizard/nodes/ServiceNode.java org/netbeans/modules/openoffice/wizard/nodes/StructMemberNode.java org/netbeans/modules/openoffice/wizard/nodes/StructNode.java org/netbeans/modules/openoffice/wizard/nodes/UnionMemberNode.java org/netbeans/modules/openoffice/wizard/nodes/UnionNode.java org/netbeans/modules/openoffice/wizard/nodes/ValueBoxNode.java org/netbeans/modules/openoffice/wizard/nodes/ValueNode.java org/netbeans/modules/openoffice/wizard/panels/addin/MethodDescriptionPanel.java org/netbeans/modules/openoffice/wizard/panels/service/IDLFilter.java org/netbeans/modules/openoffice/wizard/panels/service/InterfacePickUp.java org/netbeans/modules/openoffice/wizard/panels/service/LanguageSelectionPanel.java org/netbeans/modules/openoffice/wizard/panels/service/NewTypesPanel.java org/netbeans/modules/openoffice/wizard/panels/service/OOInterfacePanel.java org/netbeans/modules/openoffice/wizard/panels/service/OOServiceClassPanel.java org/netbeans/modules/openoffice/wizard/panels/service/ServiceSelectionPanel.java org/netbeans/modules/openoffice/wizard/panels/idl/AliasPanel.java org/netbeans/modules/openoffice/wizard/panels/idl/AttributePanel.java org/netbeans/modules/openoffice/wizard/panels/idl/BasePanel.java org/netbeans/modules/openoffice/wizard/panels/idl/ConstantsPanel.java org/netbeans/modules/openoffice/wizard/panels/idl/ConstPanel.java org/netbeans/modules/openoffice/wizard/panels/idl/CreateIDLPanel.java org/netbeans/modules/openoffice/wizard/panels/idl/EnumPanel.java org/netbeans/modules/openoffice/wizard/panels/idl/ForwardDclPanel.java org/netbeans/modules/openoffice/wizard/panels/idl/InterfacePanel.java org/netbeans/modules/openoffice/wizard/panels/idl/ModuleCreatePanel.java org/netbeans/modules/openoffice/wizard/panels/idl/OperationPanel.java org/netbeans/modules/openoffice/wizard/panels/idl/UnionMemberPanel.java org/netbeans/modules/openoffice/wizard/panels/idl/UnionPanel.java org/netbeans/modules/openoffice/wizard/panels/idl/ValueBoxPanel.java org/netbeans/modules/openoffice/wizard/panels/idl/ValueFactoryPanel.java org/netbeans/modules/openoffice/wizard/panels/idl/ValuePanel.java org/netbeans/modules/openoffice/wizard/util/AbstractMoveableNode.java org/netbeans/modules/openoffice/wizard/util/AliasCreator.java org/netbeans/modules/openoffice/wizard/util/AttributeCreator.java org/netbeans/modules/openoffice/wizard/util/ConstantCreator.java org/netbeans/modules/openoffice/wizard/util/ConstantsCreator.java org/netbeans/modules/openoffice/wizard/util/Create.java org/netbeans/modules/openoffice/wizard/util/EditCookie.java org/netbeans/modules/openoffice/wizard/util/EnumCreator.java org/netbeans/modules/openoffice/wizard/util/EnumEntryCreator.java org/netbeans/modules/openoffice/wizard/util/ExceptionCreator.java org/netbeans/modules/openoffice/wizard/util/FwdDclCreator.java org/netbeans/modules/openoffice/wizard/util/InterfaceCreator.java org/netbeans/modules/openoffice/wizard/util/ModuleCreator.java org/netbeans/modules/openoffice/wizard/util/OOIDLParser.java org/netbeans/modules/openoffice/wizard/util/OperationCreator.java org/netbeans/modules/openoffice/wizard/util/ServiceCreator.java org/netbeans/modules/openoffice/wizard/util/StructCreator.java org/netbeans/modules/openoffice/wizard/util/StructMemberCreator.java org/netbeans/modules/openoffice/wizard/util/UnionCreator.java org/netbeans/modules/openoffice/wizard/util/UnionDefaultCreator.javaorg/netbeans/modules/openoffice/wizard/util/UnionMemberCreator.java org/netbeans/modules/openoffice/wizard/util/ValueBoxCreator.java org/netbeans/modules/openoffice/wizard/util/ValueCreator.java org/netbeans/modules/openoffice/wizard/util/ValueTypeCreator.java MakeModule.java org/netbeans/modules/openoffice/wizard/OOAddInCreateIterator.java:203: cannot resolve symbol symbol : class WizardDescriptor$Panel location: package openide perchance you meant 'WizardDescriptor.Panel' public org.openide.WizardDescriptor$Panel current() { ^ org/netbeans/modules/openoffice/wizard/OOIDLWizardIterator.java:210: cannot resolve symbol symbol : class WizardDescriptor$Panel location: package openide perchance you meant 'WizardDescriptor.Panel' public org.openide.WizardDescriptor$Panel current() ^ org/netbeans/modules/openoffice/wizard/OOServiceCreateIterator.java:217: cannot resolve symbol symbol : class WizardDescriptor$Panel location: package openide perchance you meant 'WizardDescriptor.Panel' public org.openide.WizardDescriptor$Panel current() { ^ Note: Some input files use or override a deprecated API. Note: Recompile with -deprecation for details. 3 errors dmake: Error code 1, while making '../../unxlngi4.pro/class/oosupport.nbm' ---* RULES.MK *--- ERROR: Error 65280 occurred while making /var/tmp/portage/openoffice-1.1.0-r2/work/oo_1.1_src/odk/source/OOSupport !!! ERROR: app-office/openoffice-1.1.0-r2 failed. !!! Function src_compile, Line 470, Exitcode 1 !!! Build failed! Reproducible: Always Steps to Reproduce: 1. export FORCE_JAVA=yes 2. emerge openoffice Sun JDK 1.4.2_03 newest portage,emerge
I've experienced the same error here with openoffice-1.1.0-r3 and sun-jdk-1.4.2.03. The problem is related to the following java classes: org/netbeans/modules/openoffice/wizard/OOAddInCreateIterator.java org/netbeans/modules/openoffice/wizard/OOIDLWizardIterator.java org/netbeans/modules/openoffice/wizard/OOServiceCreateIterator.java This classes make reference to another class: org.openide.WizardDescriptor$Panel The error comes from the $ sign. Panel must be a nested class inside WizardDescriptor, and these three classes are attempting to use it, with a wrong syntax. When java compiles a class A containig a neste classd B, it generates two files: A.class and A$B.class, BUT when making a reference to the B class in java, you MUST use A.B, not A$B. I don't know if this was different in a prior version of Java, or even in blackdown, but I think this is the way it works right now (somebody correct me if I'm wrong). If I have some time I'll try to modify these files by hand and try to compile them to check if the error goes. I've never made a patch, so maybe somebody would assist me in doing so, if I'm right with this.
You are right that using the $ sign is not correct syntax. This basically is the reason that openoffice is broken for sun-jdk (strange as openoffice is mainly a sun effort). In any case, just make the change. If things work, please tell me. I'll make the patch. Patching basically works as follows: -copy the dir where the files reside to another name (often just append .orig) -Then change the files -go to the openoffice root dir -Then run: -diff -urN path_to_orig_dir path_to_changed_dir This will print a unified diff to standard out. If you want to save it, append ">foo.patch" to redirect the standard out.
I should check the java specification, but I would say that using the $ sign to access nested classes is wrong, so I'm surprised that this works in blackdown. Anyway, I think changing the $ for a . would work in both cases. Maybe this should be reported to the OpenOffice team as a bug? I have searched their bug database and haven't been able to find anything related to this issue. Regarding the test, I have made the changes and I'm recompiling, I'll tell you anything as soon as the compilation ends.
The compilation has finished correctly, and I have a working openoffice package compiled against sun-jdk-1.4.2.03. I attach the diff file with the fix. I've noticed that in the same java file they use the . notation (.Panel) in some places and the $ notation ($Panel) in others. I don't understand why... Anyway I think this fix would make these files work in both blackdown and sun jdk. Maybe somebody could try it with blackdown?
Created attachment 25299 [details, diff] Fix for compiling openoffice with sun-jdk This fixes the errors while compiling some java files included in the openoffice distribution using the sun jdk compiler, instead of blackdown. This is my first diff file, so I don't know if it's been generated correctly. I have selected "patch" in the content type, is this correct?
How should I proceed now? Should I extract openoffice first? What's to do?
The most straightforward way would be to to use ebuild instead of emerge and run the sequence manually: - ebuild <path-to-ebuild> unpack - cd /var/tmp/openoffice/work/OOo-1.1.0-source/ - patch -p1 <path-to-patch> - ebuild <path-to-ebuild> compile - ebuild <path-to-ebuild> install - ebuild <path-to-ebuild> package (create a package, allways nice for openoffice) - ebuild <path-to-ebuild> qmerge An other option would be to wait as I'll apply the patch to 1.1.0-r3 and 1.1.1b. I just committed the patch, so it should be available soon.