kernsuite / packaging

Use this repository to report issues with packages or request new packages
13 stars 4 forks source link

Dependency problems for lofar-dev #188

Closed nudomarinero closed 5 years ago

nudomarinero commented 5 years ago

Yesterday I updated the packages of kern-dev and the lofar python bindings are not working any more. I get this error:

Traceback (most recent call last):
  File "/home/jsm/local/DDF-v2-deep/killMS/kMS.py", line 1169, in <module>
    main(OP=OP,MSName=MSName)
  File "/home/jsm/local/DDF-v2-deep/killMS/kMS.py", line 567, in main
    Solver.InitMeanBeam()
  File "/home/jsm/local/DDF-v2-deep/killMS/Wirtinger/ClassWirtingerSolver.py", line 425, in InitMeanBeam
    AbsMeanBeam=BeamMachine.GiveMeanBeam()
  File "/home/jsm/local/DDF-v2-deep/killMS/Data/ClassBeam.py", line 45, in GiveMeanBeam
    DicoBeam=self.GiveBeam(times)
  File "/home/jsm/local/DDF-v2-deep/killMS/Data/ClassBeam.py", line 62, in GiveBeam
    self.MS.LoadSR(useElementBeam=useElementBeam,useArrayFactor=useArrayFactor)
  File "/home/jsm/local/DDF-v2-deep/killMS/Data/ClassMS.py", line 172, in LoadSR
    from lofar.stationresponse import stationresponse
  File "/usr/lib/python2.7/dist-packages/lofar/stationresponse/__init__.py", line 22, in <module>
    import _stationresponse
ImportError: /usr/lib/python2.7/dist-packages/lofar/stationresponse/_stationresponse.x86_64-linux-gnu.so: undefined symbol: _ZN5LOFAR15StationResponse11readStationERKN4casa14MeasurementSetEj

I have seen that there are now two new packages called libelementresponse2 and libstationresponse2 that were not automatically installed (perhaps a dependency problem). In a clean virtual machine I get this error when trying to install lofar-dev:

sudo apt-get install lofar-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies.
 lofar-dev : Depends: libelementresponse2 (= 3.1.7-1) but it is not going to be installed
             Depends: libstationresponse2 (= 3.1.7-1) but 4.0-1kern1 is to be installed
E: Unable to correct problems, you have held broken packages.

The mismatch between the old (installed already in the system as they were not removed) and the new version of the libraries (expected by the LOFAR Python bindings) may be creating the problem.

I have tried to install manually libelementresponse2 and libstationresponse2 in the virtual machine but, when I try to install lofar-dev afterwards I get the following error:

vagrant@ubuntu-bionic:~$ sudo apt-get install lofar-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies.
 lofar-dev : Depends: libelementresponse2 (= 3.1.7-1) but 4.0-1kern1 is to be installed
             Depends: libstationresponse2 (= 3.1.7-1) but 4.0-1kern1 is to be installed
E: Unable to correct problems, you have held broken packages.

I think that this may come from a version configuration mismatch (?) but I am not sure.

In any case, I would need this to be repaired because my pipeline depends on the LOFAR software and all the jobs are failing now. I had a look into kern-5 but could not find the LOFAR libraries.

In the meantime, is there any way to overcome this problem? Thanks.

gijzelaerr commented 5 years ago

hi! Thanks for your report! There is a couple of issues here. First of all, the LOFAR tree has not been converted to casacore 3.0 yet, and since KERN-5 is based on casacore 3 we have to wait until @tammojan gets around to port the tree. Meanwhile, the LOFAR beam model has been extracted to a new independent library. Apparently, the ABI changed though, but we left the SO version the same which results in these kinds of errors.

What needs to happen is:

The workaround is to use KERN-4 until we have resolved this issue. Sorry for messing up your system but thanks again for reporting this!

nudomarinero commented 5 years ago

Thank you for your answer. I should have thought in KERN-4. I will move to this PPA.

mooneyse commented 5 years ago

Updating LOFAR software as mentioned will probably fix the issue I am having too - the current master branch of Prefactor calls on an interpolation step in NDPPP which isn't in the KERN version of the software.

libdppp_interpolate.so: cannot open shared object file: No such file or directory

Just mentioning it here in case anyone else is having the same issue.

gijzelaerr commented 5 years ago

Did you install the dppp-dev package?

mooneyse commented 5 years ago

Hi @gijzelaerr, I couldn't find that package. Is it in KERN-5, KERN-dev, or other? Thanks.

gijzelaerr commented 5 years ago

yep, you are right, that is not in KERN-5 nor in KERN-dev. There is a new dp3 package, but that doesn't contain the shared libs you need.

So unless somebody ports the lofar software to casacore 3 you are stuck using KERN-4.

good luck

mooneyse commented 5 years ago

Grand, thanks for looking into it. :+1:

gijzelaerr commented 5 years ago

an updated lofarbeam package has been uploaded, there is a seperate issue for porting the lofar softwre to casacore 3, so I think we can close this issue https://github.com/kernsuite/packaging/issues/181