- Posts: 27
- Thank you received: 3
Beckhoff ethercat 64 with bit linuxcnc, How to install.
- shameless
- Offline
- Junior Member
-
Less
More
7 years 9 months ago #123753
by shameless
Replied by shameless on topic Beckhoff ethercat 64 with bit linuxcnc, How to install.
Hi Grotius, I install ethercat manually, and I have to start it by "/etc/init.t/ethercat start" manually, it won't start when pc boots up.
According to what you mean, if lcec.so works, ethercat won't start automatically when linuxcnc start, the two thing need to start separately?
kind regard
According to what you mean, if lcec.so works, ethercat won't start automatically when linuxcnc start, the two thing need to start separately?
kind regard
Please Log in or Create an account to join the conversation.
- shameless
- Offline
- Junior Member
-
Less
More
- Posts: 27
- Thank you received: 3
7 years 9 months ago #123754
by shameless
Replied by shameless on topic Beckhoff ethercat 64 with bit linuxcnc, How to install.
Hi Nico, I've got the same problem as yours, "rtapi_mutex_get" undefined, and there's somenoe who used to reply you that rtapi_mutex_get is defined in liblinuxcnchal.so, but when I check ldd lcec.so, the library liblinuxcnchal.so is linked. And there's something more I am upset , when I check ld lcec.so, besides the "rtapi_mutex_get", there are another three which are not defined, including "hal_export_funct"&"pow"&"rtapi_mutex_give".
Is it that I do not compile and install linuxcnc correctly?(I install linuxcnc manually, and so does xenomai)
kind regard
Is it that I do not compile and install linuxcnc correctly?(I install linuxcnc manually, and so does xenomai)
kind regard
Please Log in or Create an account to join the conversation.
- Grotius
- Offline
- Platinum Member
-
Less
More
- Posts: 2419
- Thank you received: 2349
7 years 9 months ago - 7 years 9 months ago #123795
by Grotius
Maybe you missed this text in my post how to install :
2. Each time the pc's boot's up the Ethercat rules are only read, that is not good. So permanent solution is :
Solution ==> Etc/udev/rules.d/00-ethercat.rules/ ==> GROUP="your user name"
This will problably solve your issue. Other solution can be add Ethercat start to a startup application file.
The link for the kernel : github.com/NTULINUX/RTAI
Is you succeed, please post your steps over here.
Replied by Grotius on topic Beckhoff ethercat 64 with bit linuxcnc, How to install.
According to what you mean, if lcec.so works, ethercat won't start automatically when linuxcnc start, the two thing need to start separately?
Maybe you missed this text in my post how to install :
2. Each time the pc's boot's up the Ethercat rules are only read, that is not good. So permanent solution is :
Solution ==> Etc/udev/rules.d/00-ethercat.rules/ ==> GROUP="your user name"
This will problably solve your issue. Other solution can be add Ethercat start to a startup application file.
The link for the kernel : github.com/NTULINUX/RTAI
Is you succeed, please post your steps over here.
Last edit: 7 years 9 months ago by Grotius.
The following user(s) said Thank You: Nico2017
Please Log in or Create an account to join the conversation.
- Nico2017
- Offline
- Premium Member
-
Less
More
- Posts: 153
- Thank you received: 26
7 years 9 months ago - 7 years 9 months ago #123860
by Nico2017
Replied by Nico2017 on topic Beckhoff ethercat 64 with bit linuxcnc, How to install.
Hi Grotius,
the thing is I tried the install using your .iso, so I should have the same kernel than you, should not I? Can you return me the uname -a results from your working installation? I did do a dist upgrade so maybe it is why it is failing. I will retry without the dist upgrade to see if it makes any differences.
There is also the fact that I want to run the latest linuxcnc 2.8, so dev version and your indicated build method for run in place only shows 2.7. That is why I am building the .deb packages for linuxcnc then installing it with dpkg -i. This might be where something wrong I do happens because you indicate to copy the lcec.so from the linuxcnc-ethercat to the directory of the linuxcnc installation. But when I build my debian package, the copy has not been done yet, so I am wondering if the built package are not missing this lcec.so. So might worth trying a linuxcnc RIP installation, then installing ec-debianize then linuxcnc-ethercat, then do the appropriate copy of the lcec.so on the linux installation directory then build the debian package then do a dpkg -i installation of linuxcnc. I am working on this option first.
Edit: this first option failled and I still obtain the same error message:
lcec: dlopen: /usr/lib/linuxcnc/modules/lcec.so: undefined symbol: rtapi_mutex_get
./postgui.hal:2: waitpid failed /usr/bin/rtapi_app lcec
./postgui.hal:2: /usr/bin/rtapi_app exited without becoming ready
./postgui.hal:2: insmod for lcec failed, returned -1
I am also currently trying the RTAI kernel method suggested, but I am afraid it might fail too as I believe the support for rtai builds was dropped in latest versions of ec-debianize according to github.com/sittner/ec-debianize .
Does this RTAI kernel would actually support ec-debianize?
Nicolas
PS:
Added 10/01/2019 : to solver the long time booting the file to look at for me is :
Lib/systemd/system/networking.service => edit file => line 21 => "1sec"
NB: As I am using the dpkg -i installation of linuxcnc the copy of the lcec.so must be done before the creation of debian package with dpkg-buildpackage -b -uc otherwise you get an error:
LINUXCNC - 2.8.0~pre1
Machine configuration directory is '/home/plotter/linuxcnc/configs/sim.axis'
Machine configuration file is 'axis.ini'
Starting LinuxCNC...
Found file(lib): /usr/share/linuxcnc/hallib/core_sim.hal
Note: Using POSIX realtime
Found file(lib): /usr/share/linuxcnc/hallib/sim_spindle_encoder.hal
Found file(lib): /usr/share/linuxcnc/hallib/axis_manualtoolchange.hal
Found file(lib): /usr/share/linuxcnc/hallib/simulated_home.hal
Found file(lib): /usr/share/linuxcnc/hallib/check_xyz_constraints.hal
Found file(REL): ./postgui.hal
lcec: dlopen: /usr/lib/linuxcnc/modules/lcec.so: cannot open shared object file: No such file or directoryl
./postgui.hal:2: waitpid failed /usr/bin/rtapi_app lcec
./postgui.hal:2: /usr/bin/rtapi_app exited without becoming ready
./postgui.hal:2: insmod for lcec failed, returned -1
Shutting down and cleaning up LinuxCNC...
Note: Using POSIX realtime
LinuxCNC terminated with an error. You can find more information in the log:
/home/plotter/linuxcnc_debug.txt
and
/home/plotter/linuxcnc_print.txt
as well as in the output of the shell command 'dmesg' and in the terminal
If you forgot to do the copy then you can still manually do a
sudo cp linuxcnc-ethercat/src/lcec.so /usr/lib/linuxcnc/modules/ otherwise do a cp linuxcnc-ethercat/src/lcec.so linuxcnc-dev/rtlib/ then rebuild the package and reinstall them.
the thing is I tried the install using your .iso, so I should have the same kernel than you, should not I? Can you return me the uname -a results from your working installation? I did do a dist upgrade so maybe it is why it is failing. I will retry without the dist upgrade to see if it makes any differences.
There is also the fact that I want to run the latest linuxcnc 2.8, so dev version and your indicated build method for run in place only shows 2.7. That is why I am building the .deb packages for linuxcnc then installing it with dpkg -i. This might be where something wrong I do happens because you indicate to copy the lcec.so from the linuxcnc-ethercat to the directory of the linuxcnc installation. But when I build my debian package, the copy has not been done yet, so I am wondering if the built package are not missing this lcec.so. So might worth trying a linuxcnc RIP installation, then installing ec-debianize then linuxcnc-ethercat, then do the appropriate copy of the lcec.so on the linux installation directory then build the debian package then do a dpkg -i installation of linuxcnc. I am working on this option first.
Edit: this first option failled and I still obtain the same error message:
lcec: dlopen: /usr/lib/linuxcnc/modules/lcec.so: undefined symbol: rtapi_mutex_get
./postgui.hal:2: waitpid failed /usr/bin/rtapi_app lcec
./postgui.hal:2: /usr/bin/rtapi_app exited without becoming ready
./postgui.hal:2: insmod for lcec failed, returned -1
I am also currently trying the RTAI kernel method suggested, but I am afraid it might fail too as I believe the support for rtai builds was dropped in latest versions of ec-debianize according to github.com/sittner/ec-debianize .
Does this RTAI kernel would actually support ec-debianize?
Nicolas
PS:
Added 10/01/2019 : to solver the long time booting the file to look at for me is :
Lib/systemd/system/networking.service => edit file => line 21 => "1sec"
NB: As I am using the dpkg -i installation of linuxcnc the copy of the lcec.so must be done before the creation of debian package with dpkg-buildpackage -b -uc otherwise you get an error:
LINUXCNC - 2.8.0~pre1
Machine configuration directory is '/home/plotter/linuxcnc/configs/sim.axis'
Machine configuration file is 'axis.ini'
Starting LinuxCNC...
Found file(lib): /usr/share/linuxcnc/hallib/core_sim.hal
Note: Using POSIX realtime
Found file(lib): /usr/share/linuxcnc/hallib/sim_spindle_encoder.hal
Found file(lib): /usr/share/linuxcnc/hallib/axis_manualtoolchange.hal
Found file(lib): /usr/share/linuxcnc/hallib/simulated_home.hal
Found file(lib): /usr/share/linuxcnc/hallib/check_xyz_constraints.hal
Found file(REL): ./postgui.hal
lcec: dlopen: /usr/lib/linuxcnc/modules/lcec.so: cannot open shared object file: No such file or directoryl
./postgui.hal:2: waitpid failed /usr/bin/rtapi_app lcec
./postgui.hal:2: /usr/bin/rtapi_app exited without becoming ready
./postgui.hal:2: insmod for lcec failed, returned -1
Shutting down and cleaning up LinuxCNC...
Note: Using POSIX realtime
LinuxCNC terminated with an error. You can find more information in the log:
/home/plotter/linuxcnc_debug.txt
and
/home/plotter/linuxcnc_print.txt
as well as in the output of the shell command 'dmesg' and in the terminal
If you forgot to do the copy then you can still manually do a
sudo cp linuxcnc-ethercat/src/lcec.so /usr/lib/linuxcnc/modules/ otherwise do a cp linuxcnc-ethercat/src/lcec.so linuxcnc-dev/rtlib/ then rebuild the package and reinstall them.
Last edit: 7 years 9 months ago by Nico2017.
Please Log in or Create an account to join the conversation.
- Grotius
- Offline
- Platinum Member
-
Less
More
- Posts: 2419
- Thank you received: 2349
7 years 9 months ago - 7 years 9 months ago #123873
by Grotius
Replied by Grotius on topic Beckhoff ethercat 64 with bit linuxcnc, How to install.
Hi Nicolas,
uname -r
4.9.0-8-rt-amd64
I always use a linuxcnc rip version.
If you have installed a 64 bit version and your component extemsions are .so then its compatible with ec debianize. Components with .ko extensions are for Rtai. Conclusion is preempt rt kernel is oke and has components with .so extension.
If you clone the latest linuxcnc version via github its oke.
Dist upgrade is no problem.
If you run a rip environment for linuxcnc you must have the lcec.so in the rtlib of the rip directory. Lsec.so has to be copied from ... to ....
Your startup line : lcec: dlopen: /usr/lib/linuxcnc/modules/lcec.so: cannot open shared object file: No such file or directoryl
Problably your lcec.so file is not in the correct rtlib.
Good luck !!
uname -r
4.9.0-8-rt-amd64
I always use a linuxcnc rip version.
If you have installed a 64 bit version and your component extemsions are .so then its compatible with ec debianize. Components with .ko extensions are for Rtai. Conclusion is preempt rt kernel is oke and has components with .so extension.
If you clone the latest linuxcnc version via github its oke.
Dist upgrade is no problem.
If you run a rip environment for linuxcnc you must have the lcec.so in the rtlib of the rip directory. Lsec.so has to be copied from ... to ....
Your startup line : lcec: dlopen: /usr/lib/linuxcnc/modules/lcec.so: cannot open shared object file: No such file or directoryl
Problably your lcec.so file is not in the correct rtlib.
Good luck !!
Last edit: 7 years 9 months ago by Grotius.
The following user(s) said Thank You: smal
Please Log in or Create an account to join the conversation.
- Nico2017
- Offline
- Premium Member
-
Less
More
- Posts: 153
- Thank you received: 26
7 years 9 months ago - 7 years 4 months ago #123932
by Nico2017
Replied by Nico2017 on topic Beckhoff ethercat 64 with bit linuxcnc, How to install.
Hi,
I managed to make it work thanks an hint from forum.linuxcnc.org/24-hal-components/223...ver?start=670#123888
Starting from a fresh debian distro: stretch then going to a rt kernel I manage to install everything, linuxcnc then ec-debianize and then just had to add one step for the "LinuxCNC-Ethercat" installation:
git clone github.com/sittner/linuxcnc-ethercat.git linuxcnc-ethercat"
gedit ~/linuxcnc-ethercat/src/lcec_main.c and add :
#include "rtapi_mutex.h" below #include "rtapi_app.h"
then
make -j4
sudo make install
NB for myself, this action is only required for 64 bits OS as when doing it on a 32 bits I can reuse the .deb already created for i386
On a fresh install, I also like to expend the memory limitation for hal, as I have been working lately on project which required it: github.com/LinuxCNC/linuxcnc/blob/master.../hal/hal_priv.h#L331
forum.linuxcnc.org/10-advanced-configura...-signal-pin?start=20
Thanks a lot for you advice this was really handy.
Nicolas
I managed to make it work thanks an hint from forum.linuxcnc.org/24-hal-components/223...ver?start=670#123888
Starting from a fresh debian distro: stretch then going to a rt kernel I manage to install everything, linuxcnc then ec-debianize and then just had to add one step for the "LinuxCNC-Ethercat" installation:
git clone github.com/sittner/linuxcnc-ethercat.git linuxcnc-ethercat"
gedit ~/linuxcnc-ethercat/src/lcec_main.c and add :
#include "rtapi_mutex.h" below #include "rtapi_app.h"
then
make -j4
sudo make install
NB for myself, this action is only required for 64 bits OS as when doing it on a 32 bits I can reuse the .deb already created for i386
On a fresh install, I also like to expend the memory limitation for hal, as I have been working lately on project which required it: github.com/LinuxCNC/linuxcnc/blob/master.../hal/hal_priv.h#L331
forum.linuxcnc.org/10-advanced-configura...-signal-pin?start=20
Thanks a lot for you advice this was really handy.
Nicolas
Last edit: 7 years 4 months ago by Nico2017. Reason: More precise answer
Please Log in or Create an account to join the conversation.
Time to create page: 0.328 seconds