The eclipse build documentation needs to b

Project:JNode Core
Component:Documentation
Category:bug report
Priority:normal
Assigned:Unassigned
Status:closed
Description

The eclipse build documentation needs to be updated. The build all target does not exist in build.xml, but it does in build-x86.xml. The docs suggest that running the 'all' target in build.xml from within eclipse will build the iso and other output files. Running 'all' from build-x86.xml fails because it relys on build.xml's properties and path definitions (an import doesn't work either). From a beginners perspective it appears that I have to run one of the options listed in the build.xml's help target. This requires updating in the readme file distributed with the source, and in the online documentation at http://www.jnode.org/node/116. The documentation should probably also include the tip for changing the memory configuration when defining the ant task (found as a comment on http://www.jnode.org/node/116).

Still trying to get the ant build script to work.

In order to get Eclipse to import the projects I was forced to either change the .project files to use the exact folder names (ie 'JNode-Core' becomes 'core'), or change the folder names to match the ones used in the .project files. I chose the later solution and the import worked. Aparently that causes problems with the ant build.xml file which is using the folder names that the source was packaged with.

Eclipse:
Version: 3.1.1
Build id: M20050929-0840

After changing the project names to match the source distribution folder names, and changing all the library paths to be correct, the build.xml file is working fine. It does appear to require nasm or yasm which should also be documented. The build-x86.xml's 'all' target also seems to work if the jnode.bits property is set to 32 or 64, and nasm/yasm is installed, and you add '' to just inside the project tag. It would also be useful for the docs to note that the 'jnode.enable.jnasm' property can be set to 'true' to use the JNode's assembler (worked for 32 bit, not for 64 yet).

Regard the checked out

Regarding the checked out project name, I remember that I ever encountered it too.
If you used Eclipse's "check out as ..." facility to check out the projects as a Java project, you would enter the above hardness situation.

Instead, you can get all thing work, just use "check out", not the "check out as...", then import them...
I think the common CVS command line could work too.

redany

jnode.enable.jnasm does not currently work

At first I tried to build the 64-bit version. It failed saying it couldn't find yasm. Checking the site, I found this that said we could enable the property instead, if I build the 32-bit version instead. Tried that.

Whether I do the 32 or 64 bit version with jnasm, I get the following:

[bootimage] --- Nested Exception ---
[bootimage] org.jnode.assembler.x86.InvalidOpcodeException
[bootimage] at org.jnode.assembler.x86.X86BinaryAssembler.writeMOV_Const(X86BinaryAssembler.java:3263)
[bootimage] at org.jnode.assembler.x86.X86BinaryAssembler.writeMOV_Const(X86BinaryAssembler.java:3247)
[bootimage] at org.jnode.jnasm.assembler.x86.X86Core.emitMOV(X86Core.java:928)
[bootimage] at org.jnode.jnasm.assembler.x86.X86Core.emit(X86Core.java:280)
[bootimage] at org.jnode.jnasm.assembler.x86.X86Support.emit(X86Support.java:144)
[bootimage] at org.jnode.jnasm.assembler.x86.X86Support.doAssembly(X86Support.java:110)
[bootimage] at org.jnode.jnasm.assembler.x86.X86Support.assemble(X86Support.java:68)
[bootimage] at org.jnode.jnasm.assembler.Assembler.assemble(Assembler.java:145)
[bootimage] at org.jnode.jnasm.assembler.Assembler.performTwoPasses(Assembler.java:132)
[bootimage] at org.jnode.jnasm.JNAsm.assembler(JNAsm.java:69)
[bootimage] at org.jnode.build.x86.BootImageBuilder.compileKernel(BootImageBuilder.java:754)
[bootimage] at org.jnode.build.AbstractBootImageBuilder.doExecute(AbstractBootImageBuilder.java:472)
[bootimage] at org.jnode.build.AbstractBootImageBuilder.execute(AbstractBootImageBuilder.java:786)
[bootimage] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
[bootimage] at org.apache.tools.ant.Task.perform(Task.java:364)
[bootimage] at org.apache.tools.ant.Target.execute(Target.java:341)
[bootimage] at org.apache.tools.ant.Target.performTasks(Target.java:369)
[bootimage] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
[bootimage] at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:37)
[bootimage] at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
[bootimage] at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:382)
[bootimage] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
[bootimage] at org.apache.tools.ant.Task.perform(Task.java:364)
[bootimage] at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:64)
[bootimage] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
[bootimage] at org.apache.tools.ant.Task.perform(Task.java:364)
[bootimage] at org.apache.tools.ant.taskdefs.MacroInstance.execute(MacroInstance.java:378)
[bootimage] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
[bootimage] at org.apache.tools.ant.Task.perform(Task.java:364)
[bootimage] at org.apache.tools.ant.Target.execute(Target.java:341)
[bootimage] at org.apache.tools.ant.Target.performTasks(Target.java:369)
[bootimage] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
[bootimage] at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
[bootimage] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
[bootimage] at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
[bootimage] at org.apache.tools.ant.Main.runBuild(Main.java:668)
[bootimage] at org.apache.tools.ant.Main.startAnt(Main.java:187)
[bootimage] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:246)
[bootimage] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:67)

Bug submitted

I went ahead and submitted that as it's own bug.

#1

Status:active» fixed

All issues address, I think. Changing to "fixed".

#2

Status:fixed» closed

Automatically closed -- issue fixed for two weeks with no activity.