Trouble Executing Knime With YDL

Hi, I just downloaded knime 1.2.1 and I'm trying to run it. I'm running Yellow Dog Linux 5.0, and just installed Java 1.5 (though we had to work around the server, so it is not installed in the normal location, we had to install it in /opt/ibm/java rather then /usr/share/java). Whenever I try to run knime, I get the following:

./knime.sh: line 11: /home/dizmangj/Desktop/knime_1.2.1/./.knime: cannot execute binary file

Is there somewhere that I have to specify the path to the java I just installed, or is there another problem? Thanks for any feedback you can give.

dizmangj wrote:
./knime.sh: line 11: /home/dizmangj/Desktop/knime_1.2.1/./.knime: cannot execute binary file

That doesn't seem to be a Java problem. .knime is a small Linux executable that fires up Java which then starts KNIME. Three things come to my mind that could cause this problem: Is the executable bit set on .knime (it should after extracting KNIME from the tar file, but who knows)? Maybe the partition where KNIME is installed is mounted with the "noexec" flag set, so that no programs may be executed. Does the executable format match your system architecure? KNIME currently runs on 32bit Linux (i[56]86) and in the 32bit emulation of x86_64 systems.

Regards,

Thorsten

Ohh I see, thank you so much for the reply. I'm running a 64-bit linux OS, so is there any way to make that binary executable run for my machine, or is there any way you could possibly describe how to make it possible to run on a 64-bit and I'll try to change it to get it to run? Thanks again for your help.

dizmangj wrote:
I'm running a 64-bit linux OS, so is there any way to make that binary executable run for my machine, or is there any way you could possibly describe how to make it possible to run on a 64-bit and I'll try to change it to get it to run? Thanks again for your help.

KNIME does not (yet) officially support 64bit. However, the following workaround may help you. As KNIME is mostly a bunch of Eclipse plugins you can download it from http://www.eclipse.org/ (Eclipse is available for 64bit AMD64). Please make sure that you download Eclipse 3.2 and not the latest 3.3 version as there are some problems that we fix in the next release. Then use the Eclipse Update Manager (Help->Software Updates->Find and Install->Search for new features to install->New Remote Site) to install the KNIME plugins. The Update Site's URL is http://www.knime.org/update/ After installing the plugins and restarting Eclipse you need to switch to the KNIME perspective (Window->Open Perspective->Other...->KNIME). Let me know, if this works for you.
Besides that we will discuss if we officially release KNIME for 64bit in the near future.

Regards,

Thorsten

Hi Thorsten, thank you very much for the reply. I tried doing this a little while ago, and downloaded eclipse 3.2 as you said, along with the GEF and the KNIME plugins. I get another problem here, and my friend went through the same process using YDL as well and got the same error. It said there was an error with org.knime.core.node.NodeLogger, and that I should check the plugin and classpath. I did that, and everything appeared alright though. Thanks for all your help, sorry to be difficult with all this, I appreciate it though.

-James

James,

Does this mean it works for you now, or not? If there is a problem with the NodeLogger we are of course interested in what exact the problem is!

Regards,

Thorsten

Oh I'm sorry for the confusion, but no, it still does not work. Eclipse sees that Knime is installed, but when I switch to the Knime perspective, it says:

FATAL: error initializing knime repository - Check plugin.xml and classpath.
Reason: org.knime.core.node.NodeLogger

I checked most of the plugin.xml files, including the workspace one, workspace.ui, core, base, workspace.repository; none of those had misspelled classpaths from what I could see. But when I open the Knime perspective, it shows that error, and then it switches to the perspective but each of the windows in the perspective has an error (more specifically, the node repository window, the knime projects window, and the Node Description window). For example, the node repository window shows this:
java.lang.NoClassDefFoundError:
org.knime.workbench.repository.RepositoryManager
at java.lang.Class.initializeClass(libgcj.so.7)
at
org.knime.workbench.repository.view.RepositoryView.initialize(RepositoryView.java:85)
at
org.knime.workbench.repository.view.RepositoryView.createPartControl(RepositoryView.java:108)
at
org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:334)
at
org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:197)
at
org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:566)
at
org.eclipse.ui.internal.WorkbenchPage$ActivationList.setActive(WorkbenchPage.java:3898)
at
org.eclipse.ui.internal.WorkbenchPage.restoreState(WorkbenchPage.java:2927)
at
org.eclipse.ui.internal.WorkbenchWindow.restoreState(WorkbenchWindow.java:1936)
at org.eclipse.ui.internal.Workbench.doRestoreState(Workbench.java:2857)
at org.eclipse.ui.internal.Workbench.access$14(Workbench.java:2805)
at org.eclipse.ui.internal.Workbench$19.run(Workbench.java:1682)
at
org.eclipse.ui.internal.Workbench.runStartupWithProgress(Workbench.java:1422)
at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:1679)
at org.eclipse.ui.internal.Workbench.access$12(Workbench.java:1650)
at org.eclipse.ui.internal.Workbench$17.run(Workbench.java:1529)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.ui.internal.Workbench.restoreState(Workbench.java:1550)
at
org.eclipse.ui.internal.WorkbenchConfigurer.restoreState(WorkbenchConfigurer.java:183)
at
org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:702)
at org.eclipse.ui.internal.Workbench.init(Workbench.java:1085)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1847)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:419)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95)
at
org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
at java.lang.reflect.Method.invoke(libgcj.so.7)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336)
at org.eclipse.core.launcher.Main.basicRun(Main.java:281)
at org.eclipse.core.launcher.Main.run(Main.java:978)
at org.eclipse.core.launcher.Main.main(Main.java:952)

But I checked the path, and I do have a RepositoryManager file. I've tried updating the GEF, updating eclipse (from 3.2.0 to 3.2.2, never to 3.3), and updating Knime (though that just installs extensions). Thank you so much for your help, I hope this described the problem a little more clearly.

-James

OK, that is kind of strange. What I suspect from the stacktrace is, that there is a problem with the Java you are using. It seems your are not running Sun Java 5 but GCJ from GNU. As far as I know they don't fully support Java 5 yet which may explain the error message: the class is found but cannot be loaded because of incompatible versions (Eclipse itself is still Java 1.4 only, KNIME really needs Java 5). You may try to get Java 5 from Sun for your architecture and start Eclipse with it. This is done by passing the path to the Java executable to the Eclipse command:
thor@merkur58 /opt/eclipse $ ./eclipse -vm /opt/sun-jdk-1.5.0.12/bin/java
Hope this helps.

Regards,

Thorsten

Thor,

It worked, thank you so much for your help! I figured it was something with Java, but you were dead on, thank you!