簡體   English   中英

執行 WindRiver 工作台時的錯誤消息 - 主機:Ubuntu 14.04

[英]Error message when executing WindRiver workbench - host: Ubuntu 14.04

我正在嘗試在我的主機上執行 WindRiver 工作台。 但是,它崩潰了,日志文件如下所示。

我電腦上當前安裝的java版本:

java version "1.7.0_79"
OpenJDK Runtime Environment (IcedTea 2.5.5) (7u79-2.5.5-0ubuntu0.14.04.2)
OpenJDK 64-Bit Server VM (build 24.79-b02, mixed mode)

我懷疑這是由Java版本引起的。

如果您知道如何修復它,請告訴我

ON 2015-08-25 18:56:33.830 -----------------------------------------------
eclipse.buildId=M20130131-0800/WB20141023-0742
java.version=1.6.0_21
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=en_US
Command-line arguments:  -os linux -ws gtk -arch x86

!ENTRY org.eclipse.osgi 4 0 2015-08-25 18:57:02.301
!MESSAGE Application error
!STACK 1
java.lang.UnsatisfiedLinkError: com.windriver.core.runtime.jni.Env.setEnv(Ljava/lang/String;Ljava/lang/String;)I
    at com.windriver.core.runtime.jni.Env.setEnv(Native Method)
    at com.windriver.ide.common.core.installregistry.WREnv.setSystemEnv(WREnv.java:805)
    at com.windriver.ide.common.core.installregistry.WRInstallRegistry.initWorkbenchEnvironment(WRInstallRegistry.java:631)
    at com.windriver.ide.common.core.installregistry.WRInstallRegistry.init(WRInstallRegistry.java:484)
    at com.windriver.ide.common.core.installregistry.WRInstallRegistry.getInstance(WRInstallRegistry.java:550)
    at com.windriver.ide.application.UnifiedSWTSwingApplication.checkPreconditions(UnifiedSWTSwingApplication.java:148)
    at com.windriver.ide.application.CopyOfIDEApplication.start(CopyOfIDEApplication.java:136)
    at com.windriver.ide.application.UnifiedSWTSwingApplication.access$2(UnifiedSWTSwingApplication.java:1)
    at com.windriver.ide.application.UnifiedSWTSwingApplication.start(UnifiedSWTSwingApplication.java:70)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1414)
    at org.eclipse.equinox.launcher.WRWBMain.main(WRWBMain.java:37)
!SESSION 2015-08-25 18:57:09.758-----------------------------------------------

我懷疑這是因為我的 Workbench 是 32 位,而我的主機是 64 位。

請問有什么反饋嗎?

我在 Arch Linux 64 位上遇到了同樣的錯誤。

問題在於:

/<workbench_install_dir>/workbench-<your_version>/wrwb/wrworkbench/eclipse/plugins/com.windriver.core.runtime.jni_3.3.0.20110216-1702.jar

它需要特定於平台的版本(在本例中為 linux) com.windriver.core.runtime.jni.linux_3.3.0.20110216-1702.jar (在同一目錄中找到)。
解壓特定於 linux 的 jar 將顯示庫“libstdutil.so”。 需要檢查此庫是否缺少依賴項以及是否安裝了缺少的 32 位庫。

例子:

mkdir /tmp/wbtmp && cd /tmp/wbtmp
jar -xf /home/testuser/workbench/workbench-3.3/wrwb/wrworkbench/eclipse/plugins/com.windriver.core.runtime.jni.linux_3.3.0.20110216-1702.jar
cd os/linux/x86/
ldd libstdutil.so

需要檢查 ldd 命令的輸出是否有任何標記為“未找到”的庫和那些已安裝的庫。 就我而言,我缺少 libpangox-1.0.so.0。

與工作台相同的錯誤。 我也在 Ubuntu 14.x 64 位上運行。

似乎在 Ubuntu 13.x 和 14.x 之間刪除了軟件包。

我安裝了這些軟件包,現在我的 WorkBench 加載了:

sudo apt-get install libgtk2.0-0:i386
sudo apt-get install libxtst-dev
sudo apt-get install libxtst-dev:i386
sudo apt-get install gtk2-engines-murrine:i386
sudo apt-get install lib32stdc++6
sudo apt-get install libxpm4:i386
sudo apt-get install libuuid1:i386 

對於任何因為在 CentOS 7 上使用舊的 WindRiver 系統而遇到此問題的人,您可能需要這樣做:

  • 根據@bogdan-paun 的回答,確認您缺少 libpangox-1.0.so.0
  • 下載 pangox-compat 的源 RPM
  • 使用 CentOS mock工具(從 centos-extra 下載版本而不是從 EPEL 下載)來構建這個庫的 32 位版本(centos-7-i386 root)
  • 在你的 CentOS 7 系統上,安裝你剛剛構建的 pangox-compat i686 RPM
  • 現在您的 WindRiver WorkBench 系統應該可以工作了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM