Opened 6 years ago

Closed 6 years ago

Last modified 6 years ago

#5068 closed defect (fixed)

Library libOMSimulatorLib.so is missing

Reported by: dr.christian.kral@… Owned by: Adrian Pop
Priority: blocker Milestone: 1.13.0
Component: OMEdit Version: v1.13.0-dev-nightly
Keywords: Cc: Rüdiger Franke, john.pye@…, Martin Sjölund

Description

Since a recent update (I do know which), OMEdit is not starting any more on my Linux machine. The error message is

OMEdit: error while loading shared libraries: libOMSimulatorLib.so:
cannot open shared object file: No such file or directory

The library locate libOMSimulatorLib.so seems not to be located on my machine. The may probably be case, that the library was not distributed through the OM repository.

My Synaptic package manager states that version 1.13.0~dev-1296-g1b600ac-1 was installed.


Change History (41)

comment:1 by Christian Kral <dr.christian.kral@…>, 6 years ago

This issue may be related with #5058.

comment:3 by Oliver Lenord, 6 years ago

Tried to update openmodelica package today with the same error message.

comment:4 by Adrian Pop, 6 years ago

Yes. The problem is more complicated. I will continue looking into it. The builds worked because they didn't stop on error, hence the missing pieces. Now they do.

comment:5 by Christian Kral <dr.christian.kral@…>, 6 years ago

Probably the error message of Update Manager (Linux Mint 18) helps:

E: /var/cache/apt/archives/libomsimulator_1.13.0~dev-1318-g3f87fa6-1_amd64.deb: 
trying to overwrite '/usr/lib/x86_64-linux-gnu/omc/libomantlr3.so', 
which is also in package libomc:amd64 1.13.0~dev-1318-g3f87fa6-1

comment:6 by jesse.madsen175@…, 6 years ago

I have same issue with Ubuntu 18.04 and nightly build of OpenModelica 1.13.0~dev-1297-g6c67337. Thanks for looking into it

comment:8 by Francesco Casella, 6 years ago

Milestone: Future1.13.0
Priority: highblocker

comment:9 by Francesco Casella, 6 years ago

Cc: Rüdiger Franke added

comment:10 by Adrian Pop, 6 years ago

Yep, the saga continues. Still not working as it should.

comment:14 by Christian Kral <dr.christian.kral@…>, 6 years ago

I do not know what I am doing wrong:

  • I uninstall OpenModelica
  • I install OpenModelica
  • I receive the following error message:
E: /var/cache/apt/archives/libomsimulator_1.13.0~dev-1355-g03eb733-1_amd64.deb: 
trying to overwrite '/usr/lib/x86_64-linux-gnu/omc/libomantlr3.so', 
which is also in package libomc:amd64 1.13.0~dev-1355-g03eb733-1

Is this consequence of the OM repository not be up to date yet, or am I doing something wrong?

comment:15 by Christian Kral <dr.christian.kral@…>, 6 years ago

I am using Linux Mint 18 64bit which is based on Ubuntu xenial 16.04.

comment:16 by Francesco Casella, 6 years ago

Cc: john.pye@… added
Owner: changed from Adeel Asghar to Adrian Pop
Status: newassigned

The same issue was reported to me by John Pye:

The issue is that the current package "libomsimulator" is giving errors ("error code (1)") during installation on Ubuntu 18.04.

The error dpkg: error processing archive /var/cache/apt/archives/libomsimulator_1.13.0~dev-1322-g53a43cf-1_amd64.deb (--unpack):

trying to overwrite '/usr/lib/x86_64-linux-gnu/omc/libomantlr3.so', which is also in package libomc:amd64 1.13.0~dev-1322-g53a43cf-1

To show this error, I ran:

sudo apt remove -f omedit omplot omshell libomsimulator openmodelica omnotebook drmodelica drcontrol libomc omc omshell-terminal

and then

sudo apt install openmodelica

comment:17 by Adrian Pop, 6 years ago

Cc: Martin Sjölund added

Yes John, the builds are broken currently and while some of the distros build we don't update them if any of the other ones are failing (I don't quite get why, Martin told me that).

comment:18 by Adrian Pop, 6 years ago

Deal with cmake < 3.1 on debian jessie not setting -std=c++11
https://github.com/OpenModelica/OMSimulator/pull/329

comment:19 by Adrian Pop, 6 years ago

fix detection of 32bit properly for jessie i386
https://github.com/OpenModelica/OMSimulator/pull/330
Same goes for OMEdit
https://github.com/OpenModelica/OMEdit/pull/179

comment:21 by Adrian Pop, 6 years ago

Configure test to see if -lboost_regex is required for OMSimulator (trusty amd64)
https://github.com/OpenModelica/OMEdit/pull/180

comment:22 by Adrian Pop, 6 years ago

Resolution: fixed
Status: assignedclosed

comment:23 by john.pye@…, 6 years ago

I tried latest nightlies on my 16.04 machine. The error is still:

Unpacking libomsimulator:amd64 (1.13.0~dev-1355-g03eb733-1) ...
dpkg: error processing archive /var/cache/apt/archives/libomsimulator_1.13.0~dev-1355-g03eb733-1_amd64.deb (--unpack):
 trying to overwrite '/usr/lib/x86_64-linux-gnu/omc/libomantlr3.so', which is also in package libomc:amd64 1.13.0~dev-1355-g03eb733-1
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)

[...]

Errors were encountered while processing:
 /var/cache/apt/archives/libomsimulator_1.13.0~dev-1355-g03eb733-1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Version details:

john@thunder:~$ dpkg -l "*openmodelica*"
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                          Version                     Architecture   Description
+++-=============================================-===========================-==============-===========
iU  openmodelica                                  1.13.0~dev-1355-g03eb733-1  amd64          A complete Modelica environment

comment:24 by Adrian Pop, 6 years ago

Is not done building yet, when is done it should hopefully be fixed.

comment:25 by John Pye <john.pye@…>, 6 years ago

Looks like the build failed somewhere. Tried the current nightly packages, still same problem installing openmodelica 1.13.0~dev-1368-g3cd6c97-1

comment:26 by Francesco Casella, 6 years ago

@john.pye, in order to save time you can check the Hudson main page.

In order to install successfully, the OpenModelica_LINUX_NIGHTLY_BUILD job must have a green light, and the OpenModelica_UPDATE_APT_SERVER job must have a green light and should have run at least once after the previous job was completed.

Sorry for the inconvenience, OpenModelica is a complex tool suite with many interlinked tools (OMC, OMEdit, OMShell, OMSimulator, ...), multiple dependencies on external open source libraries such as QT and tools such as gcc, clang, MinGW, etc.. We build releases for Windows 32/64 bit, many Linux/Ubuntu distros, Redhat, and MacOSX, so keeping evertying in sync is not trivial.

comment:27 by Francesco Casella, 6 years ago

Resolution: fixed
Status: closedreopened

comment:28 by Adrian Pop, 6 years ago

Hopefully this one will get rid of the conflicts: 60f5a017100d281ae530fd42cebb0c7e78251b10/OpenModelicaBuildScripts

comment:29 by Francesco Casella, 6 years ago

In the meantime the MacOSX build got broken again on a related issue

Could not open libOMSimulator.dylib: Error opening or reading file
 (referenced from /Applications/MacPorts/OMEdit.app/Contents/MacOS/OMEdit)
libOMSimulator.dylib seems to be referenced using a relative path. 
This may be a problem with its canonical library name and require the use of 
install_name_tool(1) to fix.

I hope this is a quick fix. Good luck!

comment:30 by Adrian Pop, 6 years ago

comment:31 by Christian Kral <dr.christian.kral@…>, 6 years ago

The installation of "openmodelica" now works under Linux Mint 18, 64bit.

It seems that one minor issue is left: I installed the metapackage "openmodelica" which somehow did not include "libomsimulator". After separately installing "libomsimulator" OMEdit now works.

in reply to:  31 comment:32 by Martin Sjölund, 6 years ago

Replying to Christian Kral <dr.christian.kral@…>:

It seems that one minor issue is left: I installed the metapackage "openmodelica" which somehow did not include "libomsimulator". After separately installing "libomsimulator" OMEdit now works.

I'll add that. The packing system usually automatically finds dependencies, but it has trouble with dependencies within the same source package...

comment:33 by Francesco Casella, 6 years ago

apt-get upgrade worked fine on Ubuntu 16.04 LTS (xenial). I'm not sure about OMEdit because it's a remote server and I can't access X right now.

comment:34 by Adrian Pop, 6 years ago

@casella: you can still run OMEdit with no X, it will complain about the missing libraries before complaining about no X connection. You can also use Xming on Windows and X forwarding on putty to get OMEdit displayed on your computer.

in reply to:  34 comment:35 by Francesco Casella, 6 years ago

Replying to adrpo:

@casella: you can still run OMEdit with no X, it will complain about the missing libraries before complaining about no X connection. You can also use Xming on Windows and X forwarding on putty to get OMEdit displayed on your computer.

I have Xming but for some reason I can't get it to work. However, typing 'omedit' at the prompt returns

No command 'omedit' found

so I confirm Christian's report in comment:31

comment:36 by Adrian Pop, 6 years ago

@casella: is called OMEdit (mind the case). I also had to install libomsimulator explicitly via

> apt-get install libomsimulator

But then it worked fine.

in reply to:  36 comment:37 by Francesco Casella, 6 years ago

Replying to adrpo:

@casella: is called OMEdit (mind the case).

Oops, sure.

I also had to install libomsimulator explicitly via

> apt-get install libomsimulator

But then it worked fine.

Yeah, but this should rather be avoided (see comment:32). I wanted to understand if the separate installation of libomsimulator was necessary on my machine.

I managed to start OMEdit (I needed to work on a VPN to access X-Windows) without installing libomsimulator but it stopped at the splash screen with these errors

failed to get the current screen resources
QXcbConnection: XCB error: 170 (Unknown), sequence: 163, resource id: 90,
major code: 146 (Unknown), minor code: 20

I'm not sure if it's because of missing libomsimulator or because of X issues. I'll not install libomsimulator so I can later check if it installs automatically.

Last edited 6 years ago by Francesco Casella (previous) (diff)

comment:38 by Martin Sjölund, 6 years ago

Adeel hard-links OMSimulator to OMEdit. It's necessary as long as that's the case (and not loaded dynamically at runtime when OMSimulator is used)

in reply to:  26 comment:39 by Francesco Casella, 6 years ago

@john.pye, an update
Replying to casella:

@john.pye, in order to save time you can check the Hudson main page.

In order to install successfully, the OpenModelica_LINUX_NIGHTLY_BUILD job must have a green light, and the OpenModelica_UPDATE_APT_SERVER job must have a green light and should have run at least once after the previous job was completed.

FYI, we currently have some remaining issues with RPM packages for RedHat/CentOS, so we changed the logic of the job such that now whatever builds are successful, they are updated on the APT server.

So, even if the OpenModelica_LINUX_NIGHTLY_BUILD job has a red light, you can check the console output for lines such as

Building OpenModelica bionic amd64 1.13.0~dev-1382-g2587c58
2018-09-03T02:50:16.719443: Running command: ['bash', '-c', "cd tmpbuilddir && sbuild --mail-log-to='' --jobs=12 -A
 --host=amd64 --build=amd64 -d bionic-amd64 ../sources/openmodelica_1.13.0~dev-1382-g2587c58-1.dsc"]
Elapsed time 12.07 minutes

to see if OMC was successfully built for your favourite Ubuntu distro.

in reply to:  36 comment:40 by Francesco Casella, 6 years ago

Resolution: fixed
Status: reopenedclosed

Replying to adrpo:

@casella: is called OMEdit (mind the case). I also had to install libomsimulator explicitly via

> apt-get install libomsimulator

But then it worked fine.

I had some packages held back by apt-get, including omedit itself. As soon as I installed all the held back packages, OMEdit started without a hiccup.

I guess we can close this ticket, unless someone else still has issues, in which case please re-open it

comment:41 by Adrian Pop, 6 years ago

Now also all RPMs are fine (Fedora and CentOS).

Note: See TracTickets for help on using tickets.