esrf-bliss / lima Goto Github PK
View Code? Open in Web Editor NEWLibrary for Image Acquisition
Home Page: https://lima1.rtfd.io
License: GNU General Public License v3.0
Library for Image Acquisition
Home Page: https://lima1.rtfd.io
License: GNU General Public License v3.0
Hello,
I am facing a "segmentation fault" problem in the destructor of "CtControl" at line "delete m_ct_event".
CtControl::~CtControl()
{
DEB_DESTRUCTOR();
DEB_TRACE() << "Waiting for all threads to finish their tasks";
...
delete m_ct_event; // <------
...
}
The problem often occurs at the first call of a sequence of constructor/destructor of CtControl object in The C++ Tango device LimaDetector!!
But sometimes this does not happen until the second call of a sequence of constructor/destructor of CtControl!!
The problem disappears if i comment the line "delete m_ct_event" !
Have you encountered this problem ??
Here below some GDB traces :
[2015/05/20 09:43:33.557182]_Control_Control::Control::getStatus-Trace: aHwStatus=<acq=AcqReady, det=Idle>
1432107813 [-1360024672] INFO arafat/lima_simu/simu.1 LimaDetector::delete_device() delete device arafat/lima_simu/simu.1
1432107813 [-1360024672] INFO arafat/lima_simu/simu.1 Remove dynamic attributes.
1432107813 [-1360024672] INFO arafat/lima_simu/simu.1 Delete the main control object via the factory.
[2015/05/20 09:43:33.559865]_Control_Control::Control::~CtControl-Trace: Waiting for all threads to finish their tasks
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1360024672 (LWP 28546)]
lima::CtEvent::~CtEvent (this=0x8c256d8) at /home/informatique/ica/noureddine/DeviceSources/Lima/control/src/CtEvent.cpp:64
64 delete m_cb;
(gdb) bt full
#0 lima::CtEvent::~CtEvent (this=0x8c256d8) at /home/informatique/ica/noureddine/DeviceSources/Lima/control/src/CtEvent.cpp:64
this = (CtEvent * const) 0x8c256d8
__result = 1835102822
deb = {m_deb_params = 0xb2124be8, m_destructor = true, m_funct_name = 0xb67f7906 "~CtEvent", m_obj_name = 0x0,
m_file_name = 0xb67f7784 "/home/informatique/ica/noureddine/DeviceSources/Lima/control/src/CtEvent.cpp", m_line_nr = 61}
deb = {m_deb_params = 0xb2124be8, m_destructor = true, m_funct_name = 0xb67f7906 "~CtEvent", m_obj_name = 0x0,
m_file_name = 0xb67f7784 "/home/informatique/ica/noureddine/DeviceSources/Lima/control/src/CtEvent.cpp", m_line_nr = 61}
deb = {m_deb_params = 0xb2124be8, m_destructor = true, m_funct_name = 0xb67f7906 "~CtEvent", m_obj_name = 0x0,
m_file_name = 0xb67f7784 "/home/informatique/ica/noureddine/DeviceSources/Lima/control/src/CtEvent.cpp", m_line_nr = 61}
deb = {m_deb_params = 0xb2124be8, m_destructor = true, m_funct_name = 0xb67f7906 "~CtEvent", m_obj_name = 0x0,
m_file_name = 0xb67f7784 "/home/informatique/ica/noureddine/DeviceSources/Lima/control/src/CtEvent.cpp", m_line_nr = 61}
#1 0xb675dbc7 in lima::CtControl::~CtControl (this=0x8c28c70) at /home/informatique/ica/noureddine/DeviceSources/Lima/control/src/CtControl.cpp:390
__result = 1835102822
deb = {m_deb_params = 0xb2123508, m_destructor = true, m_funct_name = 0xb67fc1a6 "~CtControl", m_obj_name = 0x0,
m_file_name = 0xb67fbc98 "/home/informatique/ica/noureddine/DeviceSources/Lima/control/src/CtControl.cpp", m_line_nr = 356}
deb = {m_deb_params = 0xb2123508, m_destructor = true, m_funct_name = 0xb67fc1a6 "~CtControl", m_obj_name = 0x0,
m_file_name = 0xb67fbc98 "/home/informatique/ica/noureddine/DeviceSources/Lima/control/src/CtControl.cpp", m_line_nr = 356}
deb = {m_deb_params = 0xb2123508, m_destructor = true, m_funct_name = 0xb67fc1a6 "~CtControl", m_obj_name = 0x0,
m_file_name = 0xb67fbc98 "/home/informatique/ica/noureddine/DeviceSources/Lima/control/src/CtControl.cpp", m_line_nr = 356}
#2 0x0809f979 in ControlFactory::reset (this=0x82075c0, detector_type=@0xb2111c60)
at /home/informatique/ica/noureddine/DeviceSources/Lima/applications/tango/LimaDetector/src/Factory.cpp:580
this = (class ControlFactory * const) 0x82075c0
detector_type = (const string &) @0xb2111c60: {static npos = 4294967295, _M_dataplus = {<allocator> = {<new_allocator> = {<No data fields>}, <No data fields>},
_M_p = 0x8c12b6c "SimulatorCCD"}}
__FUNCTION__ = "reset"
__FUNCTION__ = "reset"
#3 0x080ba845 in LimaDetector_ns::LimaDetector::delete_device (this=0xb2111a90)
at /home/informatique/ica/noureddine/DeviceSources/Lima/applications/tango/LimaDetector/src/LimaDetector.cpp:166
this = (LimaDetector * const) 0xb2111a90
#4 0xb7478390 in Tango::DevInitCmd::execute (this=0xb21008b0, device=0xb2111a90, in_any=@0x8c1af18) at basiccommand.cpp:231
admin_dev = (class DeviceImpl *) 0x8c1fef4
Regards
Arafat
I'm trying to run Lima (core-1.6) with Basler camera. The only Pylon version I was able to compile it with is 3.2.1.
After running LimaCCDs device server I get only this error message:
[2016/12/16 13:50:41.723291] eb2ee740 *Camera*Basler::Camera::Camera (BaslerCamera.cpp:260)-Error: Exception(Error): The transport layer for device class BaslerGigE could not be created. [thrown]
-------> An unforeseen exception occured.... Hardware: Camera(BaslerCamera.cpp, 260): Error: The transport layer for device class BaslerGigE could not be created.
terminate called after throwing an instance of 'omni_thread_fatal'
Aborted (core dumped)
coucou this is a test
Hello everyone,
I got the Lima device running in many computer (raspberry, ubuntu 15, etc) but now trying to install in a fresh ubuntu 16.04 everything compiles nicely but when starting the sever I got:
-------> An unforeseen exception occured.... Server instance has no attribute '__tango_classes'
and stop. Trying to debug it seems that when in LimaCCDs.py you do:
server.get_tango_class(tango_object.class_name)
it returns None.
Any suggestion?
In PylonViewerApp which is dedicated to Basler camera there is possibility to set image width and image height. How can I do that in Lima device server? I'd like to resize it to 640x480.
Hi,
I use GUI for Lima based on Taurus, which uses LiveViewer DS for image acquisition. Unfortunately this DS is no longer maintain and don't use tango event (Taurus starts polling). I have problem with image acquisition because events with images comes in bunches and image is jerky.
How can I use tango event for image acquisition? I have found last_image and video_last_image but they are invalid.
regards
IZ
Reading the issues and based on my first experience, I wonder if a list of error message which can be encountered would not be an interesting help for newcomers.
Of course, error message could be classified according to
Would you think such a list could be placed into a specific part of the doc?
Regards
Hi,
after installing Lima for specific basler camera (/home/ccthomx/depots/Lima-basler
) following https://lima-doc.readthedocs.io/en/latest/getit.html#for-a-specific-camera instructions, I added the DS to $TANGO_HOST and I can see the result into jive, it seems OK.
According to https://lima-doc.readthedocs.io/en/latest/build_install.html#environment-setup I configured env variable:
$ echo $LD_LIBRARY_PATH
/opt/pylon5:/usr/lib/:/home/ccthomx/Lima-install/Lima/lib
$ echo $PYTHONPATH
/home/ccthomx/taurus:/home/ccthomx/Lima-install/python
FYI:
$ echo $PATH
/home/ccthomx/.local/bin:/usr/local/bin:/usr/bin:/bin:
Then, I launched /home/cc/Lima-install/python/Lima/Server/LimaCCDs.py lima1
(and I tested also python /home/ccthomx/depots/Lima-basler/applications/tango/python/LimaCCDs.py lima1
).
I get similar outputs:
Traceback (most recent call last):
File "/home/cc/Lima-install/python/Lima/Server/LimaCCDs.py", line 64, in <module>
from .EnvHelper import get_sub_devices
ValueError: Attempted relative import in non-package
It seems there is some environment variable error, am I right?
If so, how could I solve this?
Regards.
Hi,
I have recently updated Lima from 1.4 to 1.6 and it turned out that some of our GUIs depend on the BeamViewer device, however I can't find BeamViewerDeviceServer class. Is some other class doing BeamViewer things now or did I just misconfigured something?
I am working with a plugin, which in the manner of Lima creates its own device.
The device names of the lima main device (LimaCCDs, why there is an "s" at the end is unclear to me) are related only in the tango device name's first part and the last.
I can ask the main device for the device name of a plugin created device name (getPluginDeviceNameFromType).
However, the inverse is not possible (yet).
To be able to derive the main servers tango name from the LimaTacoCCDs device (I am working in spec) I am cutting strings, which seems to me a rather unsafe way of obtaining the main server's name.
Would it be possible to add a taco command to the taco part of the lima server, to return the main lima devices name ?
Many thanks
Holger
Hi,
reading the documentation, I noticed a few remarks I put there.
in Interface.h (https://lima1.readthedocs.io/en/latest/plugin/index.html#hardware-interface), it is written int getNbAcquiredFrames()
should be implemented by every cameras plugins. However, I noticed that a non virtual method exists in hardware/src/HwInterface.cpp so is it really necessary?
HwInterface.h (https://github.com/esrf-bliss/Lima/blob/master/hardware/include/lima/HwInterface.h): line 138
"Running:" should not be "case Running:" ?
in Source code organization (https://lima1.readthedocs.io/en/latest/plugin/index.html#source-code-organization), DetectorNameBufferCtrlObj.cpp
is mandatory but in Buffer management (https://lima1.readthedocs.io/en/latest/plugin/index.html#buffer-management), it is written "These buffer functionalities may be implemented by the hardware layer (kernel driver in the case of the Espia). If not, an auxiliary buffer manager class will be provided to facilitate (and unify) its software implementation." which let think this is mandatory only if hardware does not manage buffer. Am I wrong?
Capabilities list (https://lima1.readthedocs.io/en/latest/cpp_api.html#capabilities-interfaces) could add a part on VideoCtrlObj
TriggerSource : https://lima1.readthedocs.io/en/latest/plugin/index.html#synchronization describes not exaclty the same modes between Triggering mode modes and common/include/lima/Constants.h in enum TrigMode (line 57) : Internal seems to be IntTrig (in Constants.h), ExtStart could be ExtGate or ExtTrigSingle, MultExtStart could be ExtTrigMult, Gate could be ExtStartStop or ExtGate, and ExtStartStop is named the same into Constants.h. Some other modes are not described (IntTrigMult, which is probably a trig for each frame into acquisition by soft, and ExtTrigReadout). Do you confirm? Do you have some details about the sens of each mode?
It is possible I misunderstood some part of the doc, if so please let me know.
Regards
Hi,
I would like to change video_mode attribute located in LimaCCDs device server.
Why? I'm developing own GUI for displaying video_last_image, but Y16 is to much precise.
I've tried to read a part of LimaCCDs device server code and I think that image_type is wrong too (Bpp12). I cannot change it.
My camera is Basler ac1300-60gm (it can use 8-bits coding)
Could you help me or give me some hint how to change it?
PP
Hi,
reading the new documentation (https://lima-doc.readthedocs.io), I noticed that several links could be changed/fixed since the doc changed recently.
I made a list here, hoping this will help:
bpm webserver application
needs an account to esrf gitlabHappy new year.
Hi guys,
I followed steps described int "Install Conda" (wget -nv https://download.opensuse.org/repositories/isv:ownCloud:desktop:client-2.4.3/Ubuntu_16.10/Release.key -O Release.key
sudo apt-key add - < Release.key
sudo apt-get update) part but it fails:
conda install lima-core
Solving environment: failed
PackagesNotFoundError: The following packages are not available from current channels:
- lima-core
Current channels:
- https://repo.anaconda.com/pkgs/main/linux-64
- https://repo.anaconda.com/pkgs/main/noarch
- https://repo.anaconda.com/pkgs/free/linux-64
- https://repo.anaconda.com/pkgs/free/noarch
- https://repo.anaconda.com/pkgs/r/linux-64
- https://repo.anaconda.com/pkgs/r/noarch
- https://repo.anaconda.com/pkgs/pro/linux-64
- https://repo.anaconda.com/pkgs/pro/noarch
To search for alternate channels that may provide the conda package you're
looking for, navigate to
https://anaconda.org
and use the search bar at the top of the page.
In https://lima-doc.readthedocs.io/en/latest/build_install.html#install-binary-packages it is written to use a specific channel, perhaps should it be added and used here?
Regards.
By the way, I noticed that there is some files which seems to not be used anymore, do you confirm?
This is:
Hi,
the doc url has been updated into the github (https://lima1.rtfd.io) but the old link still appears in several search engins. Perhaps it could be updated faster by a manual operation?
Cheers
Hi,
in https://lima1.readthedocs.io/en/latest/plugin/index.html#hardware-interface at the end of class HwInterface
definition, one can see
The lima::HwInterface::getStatus() member function should return the following information:
doxygenstruct: Cannot find class “lima::HwInterface::StatusType” in doxygen xml output for project “hardware” from directory: .doxygen/hardware/
Hello,
if I do an ldd on my machine, I get
$ ldd /usr/lib/liblimacore.so
linux-gate.so.1 => (0xb7728000)
libprocesslib.so.1.3 => /usr/lib/libprocesslib.so.1.3 (0xb743f000)
librt.so.1 => /lib/i386-linux-gnu/i686/cmov/librt.so.1 (0xb7436000)
libnexuscpp.so.0 => /usr/lib/i386-linux-gnu/libnexuscpp.so.0 (0xb73d8000)
libyat.so.0 => /usr/lib/i386-linux-gnu/libyat.so.0 (0xb7336000)
libNeXus.so.0 => /usr/lib/libNeXus.so.0 (0xb7318000)
libmxml.so.1 => /usr/lib/libmxml.so.1 (0xb7310000)
libhdf5_serial.so.8 => /usr/lib/i386-linux-gnu/libhdf5_serial.so.8 (0xb703f000)
libmfhdf.so.0 => /usr/lib/libmfhdf.so.0 (0xb7012000)
libtiff.so.4 => /usr/lib/i386-linux-gnu/libtiff.so.4 (0xb6fac000)
libconfig++.so.9 => /usr/lib/libconfig++.so.9 (0xb6f96000)
libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xb6eaa000)
libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xb6e84000)
libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xb6e66000)
libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xb6d02000)
libgsl.so.0 => /usr/lib/libgsl.so.0 (0xb6abf000)
libgslcblas.so.0 => /usr/lib/libgslcblas.so.0 (0xb6a7f000)
libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 (0xb6a66000)
/lib/ld-linux.so.2 (0xb7729000)
libxml2.so.2 => /usr/lib/i386-linux-gnu/libxml2.so.2 (0xb6911000)
libhdf5.so.7 => /usr/lib/libhdf5.so.7 (0xb6630000)
libdf.so.0 => /usr/lib/libdf.so.0 (0xb6573000)
libjpeg.so.8 => /usr/lib/i386-linux-gnu/libjpeg.so.8 (0xb653a000)
libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0xb6521000)
libdl.so.2 => /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xb651c000)
libgfortran.so.3 => /usr/lib/i386-linux-gnu/libgfortran.so.3 (0xb6422000)
libquadmath.so.0 => /usr/lib/i386-linux-gnu/libquadmath.so.0 (0xb63ab000)
libjbig.so.0 => /usr/lib/i386-linux-gnu/libjbig.so.0 (0xb639d000)
liblzma.so.5 => /lib/i386-linux-gnu/liblzma.so.5 (0xb6375000)
When I try to link something with limacore using Lima.pc
I got this error message
make[1]: entrant dans le répertoire « /tmp/Lima-Tango/LimaDetector/limadetector-1.5.2/build »
g++ -I../src -I../src -I../specifics/SimulatorCCD -I../specifics/VieworksVP -std=c++11 -D__x86_ -D__linux__ -D__OSVERSION__=2 -I/usr/include/yat4tango/src -I/usr/include/yat4tango/include -I/usr/include/yat/src -I/usr/include/yat/include -I/usr/include/tango -I/usr/include/yat/src -I/usr/include/yat/include -I/usr/include/hdf5/serial -DWITH_SPS_IMAGE -DWITH_NXS_SAVING -DWITH_TIFF_SAVING -DWITH_CONFIG -I/usr/include/Lima -std=c++11 -D__x86__ -D__linux__ -D__OSVERSION__=2 -I/usr/include/tango -I/opt/siso/include -g -O2 -lyat4tango -lyat -ltango -lomniDynamic4 -lCOS4 -llog4tango -lzmq -lomniORB4 -lomnithread -lyat -L/usr/lib/i386-linux-gnu/hdf5/serial -lhdf5 -llimacore -llimasimulator -llimavieworks-vp -ltango -lomniDynamic4 -lCOS4 -llog4tango -lzmq -lomniORB4 -lomnithread -L/opt/siso/lib -lfglib5 -o ds_LimaDetector specifics/SimulatorCCD/SimulatorCCDClass.o specifics/SimulatorCCD/SimulatorCCDStateMachine.o specifics/SimulatorCCD/SimulatorCCD.o src/LimaDetectorClass.o src/LimaDetector.o src/LimaDetectorStateMachine.o src/main.o src/Factory.o src/ClassFactory.o src/AcquisitionTask.o specifics/VieworksVP/VieworksVP.o specifics/VieworksVP/VieworksVPStateMachine.o specifics/VieworksVP/VieworksVPClass.o
/usr/bin/ld: /usr/lib/gcc/i486-linux-gnu/4.7/../../../../lib/liblimacore.so: undefined reference to symbol '_ZN4Data15HeaderContainerD1Ev'
/usr/bin/ld: note: '_ZN4Data15HeaderContainerD1Ev' is defined in DSO /usr/lib/libprocesslib.so.1.3 so try adding it to the linker command line
/usr/lib/libprocesslib.so.1.3: could not read symbols: Invalid operation
Will it be possible to add -lprocesslib in the Lima.pc.in file ?
thanks
Frederic
In [1]: from Lima import Core,Prosilica
In [2]: camera=Prosilica.Camera("192.168.1.2")
In [3]: itf=Prosilica.Interface(camera)
In [4]: ctrl=Core.CtControl(itf)
TypeError: CtControl(): arguments did not match any overloaded call:
overload 1: argument 1 has unexpected type 'Interface'
overload 2: argument 1 has unexpected type 'Interface'
In [5]:
At this moment only processed statistic are reported by lima saving.
By exposing the raw data we can get access to the timestamp of each event. This would lead to have a better diagnostic of the streaming and recording.
Hi again,
after installing Lima, I build it using sudo ./install.sh --git --install-prefix=${HOME}/Lima-install simulator python pytango-server
(I checked that sip is installed as a debian package and pytango with pip install
).
I got the following error:
$ python Lima-install/bin/LimaCCDs 1
Traceback (most recent call last):
File "Lima-install/bin/LimaCCDs", line 25, in <module>
from Lima.Server.LimaCCDs import main
File "/usr/lib/python2.7/dist-packages/Lima/Server/LimaCCDs.py", line 69, in <module>
from Lima import Core
File "/usr/lib/python2.7/dist-packages/Lima/Core/__init__.py", line 24, in <module>
from limacore import *
ImportError: /usr/lib/python2.7/dist-packages/limacore.so: undefined symbol: _ZNK4lima8CtSaving17getFormatAsStringERSsi
I checked and sip is installed
Do you have any idea what goes wrong?
Thank you.
I've just wanted to start LimaCCDs in Similator mode on my box but when I try to do it
I get SEG FAULT, i.e.
jkotan@haso228k:~/sources/Lima/applications/tango/python$ git checkout master
Switched to branch 'master'
Your branch is up-to-date with 'origin/master'.
jkotan@haso228k:~/sources/Lima/applications/tango/python$ ./LimaCCDs.py TEST
ctcontrol.accumulation() = <EnvHelper.CtAccumulation object at 0x7f2c6b050390>
ctcontrol.acquisition() = <EnvHelper.CtAcquisition object at 0x7f2c6b05fdd0>
ctcontrol.shutter() = <EnvHelper.CtShutter object at 0x7f2c642a9410>
Segmentation fault
I can fix the issue by the following patch:
diff --git a/EnvHelper.py b/EnvHelper.py
index 03f3b2d..f76f29f 100644
--- a/EnvHelper.py
+++ b/EnvHelper.py
@@ -393,12 +393,12 @@ def to_tango_object(ct, name_id):
self.__dict__["__name"])
return PyTango.client._Device, (name,)
- for name, value in patched_members.items():
- setattr(klass, name, property(*value))
-
klass.__name__ = ct_klass_name
ct_tango_map[ct_klass] = klass
- return klass(ct, name_id)
+ kl = klass(ct, name_id)
+ for name, value in patched_members.items():
+ setattr(kl, name, property(*value))
+ return kl
def create_tango_objects(ct_control, name_template):
It looks like attributes are set before class instantiation which maybe risky
and cause in my case SEG FAULT.
Bests,
Jan
The build system is debian8.
lintaillefer:~/workspace/Lima % make
make -C third-party src
make[1]: Entering directory '/users/kieffer/workspace-400/Lima/third-party'
make -C Processlib/build -j2
make[2]: Entering directory '/users/kieffer/workspace-400/Lima/third-party/Processlib/build'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/users/kieffer/workspace-400/Lima/third-party/Processlib/build'
make CFLAGS=-fPIC -C CBFLib/ -f Makefile_LINUX_gcc42 all
make[2]: Entering directory '/users/kieffer/workspace-400/Lima/third-party/CBFLib'
gcc -fPIC -I./include -I./src -c ./src/cbf.c ./src/cbf_alloc.c ./src/cbf_ascii.c ./src/cbf_binary.c ./src/cbf_byte_offset.c ./src/cbf_canonical.c ./src/cbf_codes.c ./src/cbf_compress.c ./src/cbf_context.c ./src/cbf_file.c ./src/cbf_lex.c ./src/cbf_packed.c ./src/cbf_predictor.c ./src/cbf_read_binary.c ./src/cbf_read_mime.c ./src/cbf_simple.c ./src/cbf_string.c ./src/cbf_stx.c ./src/cbf_tree.c ./src/cbf_uncompressed.c ./src/cbf_write.c ./src/cbf_write_binary.c ./src/md5c.c
./src/cbf_stx.c: In function ‘cbf_parse’:
./src/cbf_stx.c:334:23: error: too few arguments to function ‘cbf_lex_wrapper’
#define yylex cbf_lex_wrapper
^
./src/cbf_stx.c:1528:16: note: in expansion of macro ‘yylex’
yychar = yylex (&yylval);
^
./src/cbf_stx.c:360:5: note: declared here
int cbf_lex_wrapper (void *val, void *vcontext)
^
./src/cbf_stx.c:1609:94: error: ‘context’ undeclared (first use in this function)
(yyval.node) = (yyvsp[0].node); ((void **)context)[3] = NULL;
^
./src/cbf_stx.c:1609:94: note: each undeclared identifier is reported only once for each function it appears in
Makefile_LINUX_gcc42:838: recipe for target 'lib/libcbf.a' failed
make[2]: *** [lib/libcbf.a] Error 1
make[2]: Leaving directory '/users/kieffer/workspace-400/Lima/third-party/CBFLib'
Makefile:181: recipe for target 'cbflib.src' failed
make[1]: *** [cbflib.src] Error 2
make[1]: Leaving directory '/users/kieffer/workspace-400/Lima/third-party'
global.inc:30: recipe for target 'third-party.src' failed
make: *** [third-party.src] Error 2
Hi,
can you remove the DLFCN dependency. Not supported anymore in python. It is very easy to fix, but I do not have right.
Best wishes, Dennis
With sip 4.19.3, I get the following errors while building make -C sip
:
g++ -c -pthread -g -DWITH_SPS_IMAGE -I"." -I"../core" -I"../../third-party/Processlib/sip" -I"/usr/local/lib/python2.7/site-packages/numpy/core/include" -I"/usr/local/include/python2.7" -I"../../third-party/Processlib/tasks/include" -I"../../third-party/Processlib/core/include" -I"../../common/include" -I"../../hardware/include" -I"../../control/include" -I"../../control/software_operation/include" -pipe -fPIC -O2 -Wall -W -DNDEBUG -I. -I../core -I../../third-party/Processlib/sip -I/usr/local/lib/python2.7/site-packages/numpy/core/include -I/usr/local/include/python2.7 -I../../third-party/Processlib/tasks/include -I../../third-party/Processlib/core/include -I../../common/include -I../../hardware/include -I../../control/include -I../../control/software_operation/include -o siplimacorestdlist0100SoftOpRoi2SpectrumRoiNameAndTask.o siplimacorestdlist0100SoftOpRoi2SpectrumRoiNameAndTask.cpp
../../control/software_operation/sip/SoftOpId.sip: In function ‘int convertTo_std_list_0100SoftOpRoi2Spectrum_RoiNameAndTask(PyObject*, void**, int*, PyObject*)’:
../../control/software_operation/sip/SoftOpId.sip:614: error: ‘sipType_Tasks_Roi2SpectrumTask’ was not declared in this scope
../../control/software_operation/sip/SoftOpId.sip:627: error: ‘sipType_Tasks_Roi2SpectrumTask’ was not declared in this scope
../../control/software_operation/sip/SoftOpId.sip: In function ‘PyObject* convertFrom_std_list_0100SoftOpRoi2Spectrum_RoiNameAndTask(void*, PyObject*)’:
../../control/software_operation/sip/SoftOpId.sip:655: error: ‘sipType_Tasks_Roi2SpectrumTask’ was not declared in this scope
make[1]: *** [siplimacorestdlist0100SoftOpRoi2SpectrumRoiNameAndTask.o] Error 1
I can get rid of these errors using #include "sipAPIprocesslib.h"
in the %TypeHeaderCode
sections of control/software_operation/sip/SoftOpId.sip
. But then I get the following:
g++ -c -pthread -g -DWITH_SPS_IMAGE -I"." -I"../core" -I"../../third-party/Processlib/sip" -I"/usr/local/lib/python2.7/site-packages/numpy/core/include" -I"/usr/local/include/python2.7" -I"../../third-party/Processlib/tasks/include" -I"../../third-party/Processlib/core/include" -I"../../common/include" -I"../../hardware/include" -I"../../control/include" -I"../../control/software_operation/include" -pipe -fPIC -O2 -Wall -W -DNDEBUG -I. -I../core -I../../third-party/Processlib/sip -I/usr/local/lib/python2.7/site-packages/numpy/core/include -I/usr/local/include/python2.7 -I../../third-party/Processlib/tasks/include -I../../third-party/Processlib/core/include -I../../common/include -I../../hardware/include -I../../control/include -I../../control/software_operation/include -o siplimacoreDebObj.o siplimacoreDebObj.cpp
./siplimacoreDebObj.cpp: In constructor ‘sipDebObj::sipDebObj(lima::DebParams&, const std::string&, const std::string&, const std::string&, int)’:
./siplimacoreDebObj.cpp:98: error: no matching function for call to ‘lima::DebObj::DebObj(lima::DebParams&, const std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, const std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, const std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, int&)’
../../common/include/lima/Debug.h:454: note: candidates are: lima::DebObj::DebObj(lima::DebParams&, bool, const char*, const char*, const char*, int)
../../common/include/lima/Debug.h:274: note: lima::DebObj::DebObj(const lima::DebObj&)
../../common/sip/Debug.sip: In function ‘void* init_type_DebObj(sipSimpleWrapper*, PyObject*, PyObject*, PyObject**, PyObject**, PyObject**)’:
../../common/sip/Debug.sip:275: error: invalid conversion from ‘lima::DebObj*’ to ‘sipDebObj*’
make[1]: *** [siplimacoreDebObj.o] Error 1
g++ -c -pthread -g -DWITH_SPS_IMAGE -I"." -I"../core" -I"../../third-party/Processlib/sip" -I"/usr/local/lib/python2.7/site-packages/numpy/core/include" -I"/usr/local/include/python2.7" -I"../../third-party/Processlib/tasks/include" -I"../../third-party/Processlib/core/include" -I"../../common/include" -I"../../hardware/include" -I"../../control/include" -I"../../control/software_operation/include" -pipe -fPIC -O2 -Wall -W -DNDEBUG -I. -I../core -I../../third-party/Processlib/sip -I/usr/local/lib/python2.7/site-packages/numpy/core/include -I/usr/local/include/python2.7 -I../../third-party/Processlib/tasks/include -I../../third-party/Processlib/core/include -I../../common/include -I../../hardware/include -I../../control/include -I../../control/software_operation/include -o siplimacoreDebParams.o siplimacoreDebParams.cpp
./siplimacoreDebParams.cpp: In constructor ‘sipDebParams::sipDebParams(lima::DebModule, const std::string&, const std::string&)’:
./siplimacoreDebParams.cpp:66: error: no matching function for call to ‘lima::DebParams::DebParams(lima::DebModule&, const std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, const std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)’
../../common/include/lima/Debug.h:352: note: candidates are: lima::DebParams::DebParams(lima::DebModule, const char*, const char*)
../../common/include/lima/Debug.h:139: note: lima::DebParams::DebParams(const lima::DebParams&)
../../common/sip/Debug.sip: In function ‘void* init_type_DebParams(sipSimpleWrapper*, PyObject*, PyObject*, PyObject**, PyObject**, PyObject**)’:
../../common/sip/Debug.sip:120: error: invalid conversion from ‘lima::DebParams*’ to ‘sipDebParams*’
make[1]: *** [siplimacoreDebParams.o] Error 1
And I don't know how to fix that up...
Hello,
reading https://lima-doc.readthedocs.io/en/latest/build_install.html I imagine that perhaps some virtual environment could be useful to suggest in the doc here.
Just an idea, and I did not tested it, but I though perhaps you would be interested of this external sight into the doc. ^^
Hi,
while building with make, I got this message:
g++ -I../include -I../../hardware/include -I../../third-party/Processlib/core/include -Wall -pthread -fPIC -g -DHAS_INOTIFY -DWITH_CONFIG -I../../third-party/libconfig/lib -c -MD -I../include -I../../hardware/include -I../../third-party/Processlib/core/include -Wall -pthread -fPIC -g -DHAS_INOTIFY -DWITH_CONFIG -I../../third-party/libconfig/lib -o MemUtils.o MemUtils.cpp
MemUtils.cpp: In constructor ‘lima::MemBuffer::MemBuffer(int)’:
MemUtils.cpp:133: error: ‘ptr’ was not declared in this scope
The problem is into common/src/MemUtils.cpp at line 118:
char* ptr = (char*)m_ptr;
which is into #ifdef SSE2 instead of outside.
Moving it from line 118 to line 117 seems to solve this issue.
Hello,
finalizing my test report of november pilatus tests, I would like to know if there is a way to download esrf-bcu channel packages through wget/curl.
The goal is to understand if we can simply prepare some offline installation or if is too painfull to loose time on this topic.
Regards.
Hi,
I see that the property list appears into Python TANGO server section (https://lima-doc.readthedocs.io/en/latest/applications/tango/python/doc/index.html#property)
However, it seems to me this section title let the user think this section is only for Python users.
Another section title (or section) would probably be more clear for new users which do not consider themselves as python users. :)
While installing a basler device, following the old tutorial (https://lima-doc.readthedocs.io/en/latest/install_tango_device_server.html#example-of-plugin-server-setup-basler-detector).
I have several suggestions:
Lima failed to be installed in Archlinux (3.15lts Linux Kernel) with numpy(1.13).
All is well before fllowing error:
make -C sip -j3
......
processlib_tmp.sip:333:5: error: ‘import_array’ was not declared in this scope
import_array();
^~~~~~~~~~~~
processlib_tmp.sip:334:3: warning: no return statement in function returning non-void [-
Wreturn-type]
}
^
processlib_tmp.sip: In function ‘PyObject* varget_Data_buffer(void*, PyObject*, PyObject*)’:
processlib_tmp.sip:324:32: error: ‘_ProcessLibNumpyArray’ was not declared in this scope
#define PY_ARRAY_UNIQUE_SYMBOL _ProcessLibNumpyArray
^
What kind of error it is? Maybe is numpy version be wrong?
Any help is welcome!
Trying new cmake branch and it builds fine overall, but has issue installing shared libs. openSUSE distro uses lib64 dirs for 64-bit shared libs, but current cmake code always install it to lib. It can be fixed by using simple code like described here https://cmake.org/pipermail/cmake/2013-July/055374.html
get_property(LIB64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
if ("${LIB64}" STREQUAL "TRUE")
set(LIBSUFFIX 64)
else()
set(LIBSUFFIX "")
endif()
set(INSTALL_LIB_DIR lib${LIBSUFFIX} CACHE PATH "Installation
directory for libraries")
mark_as_advanced(INSTALL_LIB_DIR)
and using ${INSTALL_LIB_DIR} here https://github.com/esrf-bliss/Lima/blob/cmake/CMakeLists.txt#L484 and in other CMakeLists.txt files.
Same issue with detecting python site-packages it should use both /usr/lib/python2.7/site-packages/ /usr/lib64/python2.7/site-packages/ but now only uses lib here.
this is the error message:
rror when reaching the windowsSipCompilation.py. This
is it:
Microsoft (R) Program Maintenance Utility Version 9.00.21022.08
Copyright (C) Microsoft Corporation. All rights reserved.cl -c /EHsc /DWITH_CONFIG -I"." -I"..\core"
-I"....\third-party\Process
lib\sip" -I"C:\Python27\lib\site-packages\numpy\core\include"
-I"C:\Python27\inc
lude" -I"....\third-party\Processlib\core\include"
-I"....\third-party\Process
lib\tasks\include"
-I"....\third-party\Processlib\core\include\WindowSpecific"
-I"....\common\include" -I"....\hardware\include"
-I"....\control\include" -I
"....\control\software_operation\include" -nologo -Zm200 -Zc:wchar_t-
-O2 -MD -
W3 -w34100 -w34189 -DNDEBUG -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT
-I. -I..\co
re -I....\third-party\Processlib\sip
-IC:\Python27\lib\site-packages\numpy\core
\include -IC:\Python27\include
-I....\third-party\Processlib\core\include -I..
..\third-party\Processlib\tasks\include
-I....\third-party\Processlib\core\incl
ude\WindowSpecific -I....\common\include -I....\hardware\include
-I....\contr
ol\include -I....\control\software_operation\include -Fo
@C:\Users\WINDOW~1\App
Data\Local\Temp\nm2FA4.tmp
lima_init_numpy.cpp
siplimacorecmodule.cpp
../../control/sip/CtConfig.sip(300) : error C2065:
'sipExportedExceptions_limaco
re' : undeclared identifier
../../common/sip/Exceptions.sip(41) : error C2065:
'sipExportedExceptions_limaco
re' : undeclared identifier
../../common/sip/Exceptions.sip(41) : error C2065:
'sipExportedExceptions_limaco
re' : undeclared identifier...
Hello,
I heared a workshop took place to implement a camera plugin from scratch and that there is perhaps some slides.
Are those slides available somewhere?
Regards.
I cannot build Git master (even with the smallest configuration) via make
because Data.h
and LinkTask.h
are not found. Are these somehow generated at build time?
Dear all,
I am playing around with a Basler camera and I would need to take data at the maximum possible speed through Tango.
dev_limaccd.acq_expo_time = 0.01 #The exposure time of the image, Default is 1 second
dev_limaccd.acq_nb_frames = 50 #Number of frames to be acquired, Default is 1 frame
dev_limaccd.saving_format='Edf'
dev_limaccd.saving_directory='/home/tangodiag/OUT'
dev_limaccd.saving_prefix='tst_'
dev_limaccd.saving_suffix = '.edf'
dev_limaccd.prepareAcq()
dev_limaccd.startAcq()
t0 = dt.datetime.now()
last_img = dev_limaccd.last_image_ready
print 'last image --- ',last_img,dev_limaccd.last_image_saved
read_image=-1
while last_img != dev_limaccd.acq_nb_frames-1:
read_image += 1
last_img = dev_limaccd.last_image_ready
time.sleep(0.05)
t=dt.datetime.now()
print 'last image --- ',read_image,last_img,dev_limaccd.last_image_ready,dev_limaccd.last_image_saved,t-t0
for i in range(0,dev_limaccd.acq_nb_frames):
print i
img = dev_limaccd.readImage(i)
dev_limaccd.writeImage(i)
Using that options I could reach 10-15 Hz. I would need to approach 50 ...
How could I improve acq speed through Tango ?
Thanks for the feedback
Hi,
following the doc, I tryed to install Lima on a new computer.
However, the following line git submodule init third-party/Processlib third-party/Sps third-party/libconfig
failed because third-party/libconfig
does not exist.
Should this part be deleted?
Hi,
after building a new Lima version for my basler CCD, I got an applications/tango without any executable (it contains python and cpp empty directories).
However it seems to me this directory should contain LimaCCDs.py
Could you remind me how to get this DS please?
Here are the steps I followed:
git clone git://github.com/esrf-bliss/Lima.git Lima-non-recursif
cd Lima-non-recursif
git submodule init third-party/Processlib third-party/Sps third-party/libconfig
git submodule init camera/basler
## to fix issue #37
sed -i -n '117{h;n;G};p' common/src/MemUtils.cpp
make
cp config.inc_default config.inc
sudo sed -i -e "s/COMPILE_SIMULATOR=1/COMPILE_SIMULATOR=0/g" config.inc
sudo sed -i -e "s/COMPILE_BASLER=0/COMPILE_BASLER=1/g" config.inc
make config
make
make -C sip -j3
INSTALL_DIR=${PYTHONPATH}/Ressources/Lima
make install
Hi,
I noticed that the documentation has evolved without upgrading its version.
I saw this by comparing the current PDF version (1.7.2 of 199 pages) I got on readthedocs and the one I downloaded in november, 28th (1.7.2 of 231 pages).
Perhaps something broke into the version update?
In [1]: from Lima import Core,Prosilica
In [2]: camera=Prosilica.Camera("192.168.1.2")
In [3]: camera.getVideoMode()
python: /tmp/buildd/sip4-qt3-4.10.2/siplib/siplib.c:6086: sip_api_convert_from_enum: Assertion `(((td)->td_flags & 0x0007) == 0x0003)' failed.
Aborted
Hello,
I would like to ask you about two attributes placed in LimaCCDs. These are video_roi and image_roi.
I'm using lima core from branch 1.7 (1.7.2 version) and corresponding with Basler code.
I would like to edit roi for video_last_image (or another source of image) and roi for profiles (from bpm) independently (because I would like to see all image and attributes from bpm calculated for roi).
Unfortunately, video_roi depends on image_roi (video_last_image depends on video_roi and image_roi).
Could you give me a hint:
Cheers
PP
Importing Lima in a python27 jupyter notebook make the kernel to restart.
Before that I had to upgrade sip because jupyter was complaining:
the sip module implements API v11.0 to v11.3 but the processlib module requires API v9.2
Try from different conda environment but same problem. No problem from conda/ipython.
Do you experience the same issue? Is it an incompatibility with sip?
Reading the future doc (https://lima-doc.readthedocs.io/en/latest/build_install.html#using-scripts), I found some points which can perhaps be improved since this future doc is work in progress.
I found the following device list:
andor|andor3|basler|prosilica|adsc|mythen3|ueye|xh|xspress3|ultra|
xpad|mythen|pco|marccd|pointgrey|imxpad|dexela|merlin|v4l2|
eiger|pixirad|hexitec|aviex|roperscientific|rayonixhs|espia|maxipix|frelon
Since it is not a specific windows or GNU/Linux section, I understand this section lists all the devices which can be installed.
In order to compare it easily, I classified it in alphabetical order:
adsc|andor|andor3|aviex|basler|dexela|eiger|espia|frelon|hexitec|
imxpad|marccd|maxipix|merlin|mythen|mythen3|pco|pixirad|pointgrey|
prosilica|rayonixhs|roperscientific|ueyeultra|v4l2|xh|xpad|xspress3
When I compare camera/
directory to this list, it lakes some subdirectories: hamamatsu, fli, lambda, photonicscience, pilatus, slsdetector, ueye, ultra.
Some additional remarks to help increasing the doc:
ueyeultra
is, is this the same?scripts/config.txt_default
Perhaps an alphabetical order list would be easier to user for the reader.
Hope this will help with the doc.
Regards
Hi,
in each readthedoc page is a link up-right to the "View page source".
Like in https://tango-controls.readthedocs.io/en/dev/ this link could be updated to a link to Github to help contributors. It could be especially useful if you want contributors to propose themselves some corrections.
Regards.
Hi,
after installing Lima, I declared a device in CLI (using tango_admin, to make this step reproductable) and launched ATKPanel.
Then, ATKPanel stops at 8% while "Importing attributes from li/dg/sst.01-ccd.01-" and never launched.
I have to say I am not sure this is a Lima issue, but since I did never got this behavior with other devices, I am wondering if you had some insights to solve this.
Here is the way I declared the device to TANGO:
$ /usr/lib/tango/tango_admin --add-server LimaCCDs/lima1 LimaCCDs LI/DG/SST.01-CCD.01-lima
$ /usr/lib/tango/tango_admin --add-property LI/DG/SST.01-CCD.01-lima LimaCameraType Basler
$ /usr/lib/tango/tango_admin --add-server LimaCCDs/lima1 Basler LI/DG/SST.01-CCD.01-basler
$ /usr/lib/tango/tango_admin --add-property LI/DG/SST.01-CCD.01-basler cam_ip_address 192.168.209.87
$ /usr/lib/tango/tango_admin --add-property LI/DG/SST.01-CCD.01-basler packet_size 1500
$ /usr/lib/tango/tango_admin --add-server LimaViewer/limaviewer1 LimaViewer LI/DG/SST.01-CCD.01-limaviewer
$ /usr/lib/tango/tango_admin --add-property LI/DG/SST.01-CCD.01-limaviewer Dev_Ccd_name LI/DG/SST.01-CCD.01-lima
$ /usr/lib/tango/tango_admin --add-server LimaCCDs/lima1 LimaCCDs LI/DG/SST.01-CCD.01-lima
$ /usr/lib/tango/tango_admin --add-property LI/DG/SST.01-CCD.01-lima LimaCameraType Basler
$ /usr/lib/tango/tango_admin --add-server LimaCCDs/lima1 Basler LI/DG/SST.01-CCD.01-basler
$ /usr/lib/tango/tango_admin --add-property LI/DG/SST.01-CCD.01-basler cam_ip_address 192.168.209.87
$ /usr/lib/tango/tango_admin --add-property LI/DG/SST.01-CCD.01-basler packet_size 1500
$ /usr/lib/tango/tango_admin --add-server LimaViewer/limaviewer1 LimaViewer LI/DG/SST.01-CCD.01-limaviewer
$ /usr/lib/tango/tango_admin --add-property LI/DG/SST.01-CCD.01-limaviewer Dev_Ccd_name LI/DG/SST.01-CCD.01-lima
Here is the output of DS console:
/home/ccthomx/Lima-install/bin/LimaCCDs lima1
('basler camera_id:', 'ip://192.168.209.87')
ctcontrol.accumulation() = <Lima.Server.EnvHelper.CtAccumulation object at 0x7feeac05a650>
ctcontrol.acquisition() = <Lima.Server.EnvHelper.CtAcquisition object at 0x7feeac06f810>
ctcontrol.shutter() = <Lima.Server.EnvHelper.CtShutter object at 0x7feeac004490>
ctcontrol.video() = <Lima.Server.EnvHelper.CtVideo object at 0x7feeac00c110>
ctcontrol.saving() = <Lima.Server.EnvHelper.CtSaving object at 0x7feeac01ef90>
ctcontrol.event() = <Lima.Server.EnvHelper.CtEvent object at 0x7feeac03a4d0>
ctcontrol.image() = <Lima.Server.EnvHelper.CtImage object at 0x7feeac03af50>
ctcontrol.buffer() = <Lima.Server.EnvHelper.CtBuffer object at 0x7feea4080c90>
Warning: setFrameRate() not supported
[2018/08/29 13:13:39.535584] 7feeb9b5e700 *Application*Lima.Server.LimaCCDs::LimaCCDs::apply_config-Always: Applied config : /home/ccthomx/lima_lima1.cfg : default
Here is the output of atkpanel:
atkpanel li/dg/sst.01-ccd.01-lima
====================== ZMQ (3.22) event system is available ============================
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
[2018/08/29 13:17:36.681211] 7fee995bd700 *Control*Control::Shutter::getMode (/home/ccthomx/depots/Lima/control/src/CtShutter.cpp:117)-Error: Exception(Error): No shutter capability [thrown]
Device (sys/database/2) timed out (>3000 ms)!
Device (sys/database/2) timed out (>3000 ms)!
[...]
Warning, AttributeFactory.getScalar(li/dg/sst.01-ccd.01-lima/video_last_image) : Unsupported DevEncoded attribute. Try to set the format attribute property to 'RawImage'.
Device (sys/database/2) timed out (>3000 ms)!
[...]
Here is env variable values:
$ echo $PATH
/home/ccthomx/.local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
$echo $LD_LIBRARY_PATH
/opt/pylon5/lib64:/opt/pylon5/:/usr/lib:/home/ccthomx/Lima-install/Lima/lib
$echo $PYLON_ROOT
/opt/pylon5
$ echo $PYTHONPATH
/home/ccthomx/taurus:/home/ccthomx/Lima-install/python
Regards.
Dear All,
I have created a LimaViewer device using LimaViewer.py. I followed your documentation located in https://lima-doc.readthedocs.io/en/latest/install_tango_device_server.html.
When I started the device server I have the following error :
Traceback (most recent call last):
File "/home/tangodiag/anaconda2/bin/LimaViewer.py", line 263, in <module>
main()
File "/home/tangodiag/anaconda2/bin/LimaViewer.py", line 257, in main
except PyTango.DevFailed(e):
NameError: global name 'e' is not defined
I have installed the packages in anaconda 2.7 on ubuntu 18.04
Thanks for the feedback.
#0 0x00007fffd3c7b928 in lima::HwVideoCtrlObj::callNewImage (this=0x0,
data=0x20833a0 "\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017\377\017"..., width=1296,
height=966, aVideoMode=lima::Y16) at ../../../hardware/include/HwVideoCtrlObj.h:75
#1 0x00007fffd3c37add in lima::Basler::Camera::_AcqThread::threadFunction (this=0x3f42e10) at BaslerCamera.cpp:553
#2 0x00007fffd447a95d in lima::Thread::staticThreadFunction (data=0x3f42e10) at ThreadUtils.cpp:273
#3 0x00007ffff7bc8062 in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#4 0x00007ffff6fd9c1d in clone () from /lib/x86_64-linux-gnu/libc.so.6
Hi,
I'm trying to get working a Ueye camera in tango, everything goes smooth (thanks for the great job) till I add the device and run the server. When loading I got a seg. fault and is when loading the limaueye.so lib. Doing ld in such lib many PyXXX functions appears as undefined references. Any idea what I did wrong?
Thanks a lot!
Hi, I'm trying to install Lima to interface a Basler camera with Python. Python is installed with miniconda on a PC under Windows 8.
When i run the install.bat, it returns that it can found the path specified...
Can you help me ? Is there a simpler way to install this library via conda, or git function ?
Romain
Hi there,
I tried to install Lima on CentOS6.
Here are the steps I followed:
# LImA on Dectris PC
## Installation
mkdir ~/tmp
cd ~/tmp
### Getting Lima code
sudo yum install git
### Lima build depedencies : cmake>=3.1
sudo yum install gcc cmake322 gsl gsl-devel
### Lima python dependencies (yum <= 4.18)
yum search sip
sudo yum install python numpy sip
### images format
sudo yum install libtiff zlib CBFlib hdf5 lz4 libconfig
### libtango9
#### liblog4tango
wget -c http://pubrepo.maxiv.lu.se/rpm/el6/x86_64/liblog4tango5-5.0.1-7.el6.maxlab.x86_64.rpm
sudo rpm -i liblog4tango5-5.0.1-7.el6.maxlab.x86_64.rpm
#### zeromq4
sudo yum install libsodium
wget -c http://pubrepo.maxiv.lu.se/rpm/el6/x86_64/zeromq4-4.1.4-5.el6.x86_64.rpm
sudo rpm -i zeromq4-4.1.4-5.el6.x86_64.rpm
#wget -c http://pubrepo.maxiv.lu.se/rpm/el6/x86_64/zeromq4-devel-4.1.4-5.el6.x86_64.rpm
#sudo rpm -i zeromq4-devel-4.1.4-5.el6.x86_64.rpm
#wget -c http://pubrepo.maxiv.lu.se/rpm/el6/x86_64/cppzmq-devel-4.1.4-5.el6.x86_64.rpm
#sudo rpm -i cppzmq-devel-4.1.4-5.el6.x86_64.rpm
#### libtango9
wget -c http://pubrepo.maxiv.lu.se/rpm/el6/x86_64/libtango9-9.2.2-7.el6.maxlab.x86_64.rpm
sudo rpm -i libtango9-9.2.2-7.el6.maxlab.x86_64.rpm
#### libzmq
#### python-futures
sudo yum install python-futures
### PyTango
wget -c http://pubrepo.maxiv.lu.se/rpm/el6/x86_64/python-pytango-9.2.0-8.el6.maxlab.x86_64.rpm
sudo rpm -i python-pytango-9.2.0-8.el6.maxlab.x86_64.rpm
#### libtango
#### boost-python
sudo yum install boost-python
#### numpy
sudo yum install numpy
#### six
sudo yum install python-six
#### setuptools
sudo yum install python-setuptools
#### sphinx
sudo yum install python-sphinx
#### python-futures
#### gevent
sudo yum install python-gevent
cd ..
## Getting Lima code
git clone git://github.com/esrf-bliss/Lima.git
cd Lima
## Install.sh
sudo ln -s /usr/local/cmake/3.2.2/bin/cmake /usr/bin/cmake
source /etc/bashrc
sudo ./install.sh --git --install-prefix=./install --install-python-prefix=./install/python pilatus python pytango-server
When I launched this last instruction, I get this output
~/Lima> sudo ./install.sh --git --install-prefix=./install --install-python-prefix=./install/python pilatus python pytango-server
Executing:git submodule init camera/pilatus
Submodule 'camera/pilatus' (git://github.com/esrf-bliss/Lima-camera-pilatus) registered for path 'camera/pilatus'
Executing:git submodule update camera/pilatus
Cloning into 'camera/pilatus'...
remote: Enumerating objects: 900, done.
remote: Total 900 (delta 0), reused 0 (delta 0), pack-reused 900
Receiving objects: 100% (900/900), 224.41 KiB | 0 bytes/s, done.
Resolving deltas: 100% (472/472), done.
Submodule path 'camera/pilatus': checked out '0a26b61f31d41c60a6b45385279f889f7791d2d4'
Executing:git submodule init
Executing:git submodule init applications/tango/python
Submodule 'applications/tango/python' (git://github.com/esrf-bliss/Lima-tango-python) registered for path 'applications/tango/python'
Executing:git submodule update applications/tango/python
Cloning into 'applications/tango/python'...
remote: Enumerating objects: 1547, done.
remote: Total 1547 (delta 0), reused 0 (delta 0), pack-reused 1547
Receiving objects: 100% (1547/1547), 470.60 KiB | 0 bytes/s, done.
Resolving deltas: 100% (1069/1069), done.
Submodule path 'applications/tango/python': checked out 'df3bf14910abd2576147891046d155e4f4661338'
Executing:git submodule init
Executing:git submodule init third-party/Processlib
Submodule 'third-party/Processlib' (git://github.com/esrf-bliss/Processlib) registered for path 'third-party/Processlib'
Executing:git submodule update third-party/Processlib
Cloning into 'third-party/Processlib'...
remote: Enumerating objects: 2223, done.
remote: Total 2223 (delta 0), reused 0 (delta 0), pack-reused 2223
Receiving objects: 100% (2223/2223), 821.11 KiB | 0 bytes/s, done.
Resolving deltas: 100% (1043/1043), done.
Submodule path 'third-party/Processlib': checked out 'f56b83502ddab7e70874a4665b76e0fed0019446'
Executing:git submodule init
Executing:cmake /home/det/Lima -G"Unix Makefiles" -DLIMACAMERA_SIMULATOR=1 -DLIMACAMERA_PILATUS=1 -DLIMA_ENABLE_PYTHON=1 -DLIMA_ENABLE_PYTANGO_SERVER=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=./install -DPYTHON_SITE_PACKAGES_DIR=./install/python
-- The C compiler identification is GNU 4.4.7
-- The CXX compiler identification is GNU 4.4.7
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for include file pthread.h
-- Looking for include file pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found PythonInterp: /usr/bin/python (found version "2.6.6")
-- Found PythonLibs: /usr/lib64/libpython2.6.so (found version "2.6.6")
-- Found SIP version: 4.9.3
-- Found GSL: /usr/lib64/libgsl.so
Traceback (most recent call last):
File "/home/det/Lima/cmake/readsipsbf.py", line 9, in <module>
for l in open(sbf_fname):
IOError: [Errno 2] No such file or directory: '/home/det/Lima/build/third-party/Processlib/sip/processlib.sbf'
CMake Error at cmake/SIPMacros.cmake:136 (add_custom_command):
add_custom_command Wrong syntax. A TARGET or OUTPUT must be specified.
Call Stack (most recent call first):
third-party/Processlib/CMakeLists.txt:244 (add_sip_python_module)
CMake Error at third-party/Processlib/CMakeLists.txt:245 (target_include_directories):
Cannot specify include directories for target "python_module_processlib"
which is not built by this project.
CMake Error at third-party/Processlib/CMakeLists.txt:246 (target_link_libraries):
Cannot specify link libraries for target "python_module_processlib" which
is not built by this project.
-- Configuring incomplete, errors occurred!
See also "/home/det/Lima/build/CMakeFiles/CMakeOutput.log".
See also "/home/det/Lima/build/CMakeFiles/CMakeError.log".
Problem building/installing Lima: Something is wrong in CMake environment. Make sure your configuration is good. [cmake /home/det/Lima -G"Unix Makefiles" -DLIMACAMERA_SIMULATOR=1 -DLIMACAMERA_PILATUS=1 -DLIMA_ENABLE_PYTHON=1 -DLIMA_ENABLE_PYTANGO_SERVER=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=./install -DPYTHON_SITE_PACKAGES_DIR=./install/python]
I will try to use cmake, but perhaps there is something wrong with the script install.sh
If you understand what's wrong...
Regards
I followed instruction from http://lima.blissgarden.org/install_linux.html especially Commands for a minimum checkout into the directory "/home/tangosrv/SW_tango/Maquette/camera/src/Lima-non-recursif/"
When launching "make" after "make config", I got the following error :
make
make -C third-party src
make[1]: entrant dans le répertoire « /home/tangosrv/SW_tango/Maquette/camera/src/Lima-non-recursif/third-party »
make -C Processlib/build -j2
make[2]: entrant dans le répertoire « /home/tangosrv/SW_tango/Maquette/camera/src/Lima-non-recursif/third-party/Processlib/build »
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../core/src/GslErrorMgr.o ../core/src/GslErrorMgr.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../core/src/PoolThreadMgr.o ../core/src/PoolThreadMgr.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../core/src/TaskEventCallback.o ../core/src/TaskEventCallback.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../core/src/LinkTask.o ../core/src/LinkTask.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../core/src/SinkTask.o ../core/src/SinkTask.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../core/src/TaskMgr.o ../core/src/TaskMgr.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../core/src/HeaderContainer.o ../core/src/HeaderContainer.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../tasks/src/BackgroundSubstraction.o ../tasks/src/BackgroundSubstraction.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../tasks/src/FlatfieldCorrection.o ../tasks/src/FlatfieldCorrection.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../tasks/src/RoiCounter.o ../tasks/src/RoiCounter.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../tasks/src/Binning.o ../tasks/src/Binning.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../tasks/src/Flip.o ../tasks/src/Flip.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../tasks/src/SoftRoi.o ../tasks/src/SoftRoi.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../tasks/src/Bpm.o ../tasks/src/Bpm.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../tasks/src/Mask.o ../tasks/src/Mask.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../tasks/src/Roi2Spectrum.o ../tasks/src/Roi2Spectrum.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../tasks/src/Rotation.o ../tasks/src/Rotation.cpp
g++ -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -c -MD -I../core/include -I../tasks/include -fPIC -Wall -pthread -O3 -o ../tasks/src/PeakFinder.o ../tasks/src/PeakFinder.cpp
gcc -shared -o libprocesslib.so.1.4.0 ../core/src/GslErrorMgr.o ../core/src/PoolThreadMgr.o ../core/src/TaskEventCallback.o ../core/src/LinkTask.o ../core/src/SinkTask.o ../core/src/TaskMgr.o ../core/src/HeaderContainer.o ../tasks/src/BackgroundSubstraction.o ../tasks/src/FlatfieldCorrection.o ../tasks/src/RoiCounter.o ../tasks/src/Binning.o ../tasks/src/Flip.o ../tasks/src/SoftRoi.o ../tasks/src/Bpm.o ../tasks/src/Mask.o ../tasks/src/Roi2Spectrum.o ../tasks/src/Rotation.o ../tasks/src/PeakFinder.o -Wl,-soname,libprocesslib.so.1.4 -lgsl -lgslcblas -pthread
ln -sf libprocesslib.so.1.4.0 libprocesslib.so.1.4
ln -sf libprocesslib.so.1.4 libprocesslib.so
make[2]: quittant le répertoire « /home/tangosrv/SW_tango/Maquette/camera/src/Lima-non-recursif/third-party/Processlib/build »
make -C Sps/Src CPPFLAGS=-I../Include CFLAGS=-fPIC sps.o
make[2]: entrant dans le répertoire « /home/tangosrv/SW_tango/Maquette/camera/src/Lima-non-recursif/third-party/Sps/Src »
cc -fPIC -I../Include -c -o sps.o sps.c
make[2]: quittant le répertoire « /home/tangosrv/SW_tango/Maquette/camera/src/Lima-non-recursif/third-party/Sps/Src »
cd libconfig && ./configure --prefix=/home/tangosrv/SW_tango/Maquette/camera/src/Lima-non-recursif/install/Lima/
/bin/sh: ./configure: not found
make[1]: *** [libconfig.confsrc] Erreur 127
make[1]: quittant le répertoire « /home/tangosrv/SW_tango/Maquette/camera/src/Lima-non-recursif/third-party »
make: *** [third-party.src] Erreur 2
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.