*SOLVED* Recompiling genhexkins

More
11 Oct 2010 09:31 - 10 Mar 2011 18:00 #4617 by PKM
Hi everyone.

I'm new to EMC2 and would like to use it for hexapod control.
I tried to recompile genhexkins.c with changed hexapod dimensions. After changing values in genhexkins.h I used

sudo comp --install genhexkins.c

and had the following warnings
WARNING: "pmRpyMatConvert" [/tmp/tmpvWVdx8/genhexkins.ko] undefined!
WARNING: "hal_init" [/tmp/tmpvWVdx8/genhexkins.ko] undefined!
WARNING: "pmCartCartCross" [/tmp/tmpvWVdx8/genhexkins.ko] undefined!
WARNING: "hal_exit" [/tmp/tmpvWVdx8/genhexkins.ko] undefined!
WARNING: "pmCartUnit" [/tmp/tmpvWVdx8/genhexkins.ko] undefined!
WARNING: "pmMatCartMult" [/tmp/tmpvWVdx8/genhexkins.ko] undefined!
WARNING: "pmCartCartAdd" [/tmp/tmpvWVdx8/genhexkins.ko] undefined!
WARNING: "hal_ready" [/tmp/tmpvWVdx8/genhexkins.ko] undefined!
WARNING: "pmCartMag" [/tmp/tmpvWVdx8/genhexkins.ko] undefined!
WARNING: "pmCartCartSub" [/tmp/tmpvWVdx8/genhexkins.ko] undefined!

After that EMC-HAL-SIM-HEXAPOD not starting, error message under spoiler
Warning: Spoiler!


Thus, genhexkins is not compiled properly. What should I do? Please, help

PS: EMC2_2.2.4 on Ubuntu 10.04

Solved by installing all required packages.
Last edit: 10 Mar 2011 18:00 by PKM.

Please Log in or Create an account to join the conversation.

More
10 Jan 2012 14:07 - 10 Jan 2012 14:09 #16521 by honey

PKM wrote:
Solved by installing all required packages.


Which packages you have installed? I have a similar problem....I tried to install a new kinematics "armkins.c" with sudo comp --install and I have this error:

> MODPOST 1 modules
> WARNING: "hal_init" [/tmp/tmpujuZ4U/armkins.ko] undefined!
> WARNING: "hal_exit" [/tmp/tmpujuZ4U/armkins.ko] undefined!
> WARNING: "hal_ready" [/tmp/tmpujuZ4U/armkins.ko] undefined!
> WARNING:"pmPoseHomConvert" [/tmp/tmpujuZ4U/armkins.ko] undefined!
>WARNING:"pmHomPoseConvert" [/tmp/tmpujuZ4U/armkins.ko] undefined!
> CC /tmp/tmpujuZ4U/armkins.mod.o
> LD [M] /tmp/tmpujuZ4U/armkins.ko
> make[1]: Uscita dalla directory '/usr/src/linux-headers-2.6.32-122-rtai'


When I run emc2 I have this debug information:

>arm_inversa.hal:4: Warning: File contains DOS-style line endings.
>insmod: error inserting '/usr/realtime-2.6.32-122-rtai/modules/emc2/armkins.ko': -1 Unknown symbol in module
>arm_inversa.hal:5: exit value: 1
>arm_inversa.hal:5: insmod failed, returned -1

You can help me?
Last edit: 10 Jan 2012 14:09 by honey.

Please Log in or Create an account to join the conversation.

More
10 Jan 2012 14:21 #16523 by cncbasher
one problem you have is arm_inversa.hal has been saved using Dos style liine endings

using for example gedit
re-save using Unix/Linux line endings will solve one problem as shown

run sudo apt-get build-dep emc2
should help finding any missing packages
you do not say which version of emc you are compiling for , or if you are using the development version from GIT
this would help

Please Log in or Create an account to join the conversation.

More
10 Jan 2012 15:12 #16526 by honey
cncbasher wrote:

one problem you have is arm_inversa.hal has been saved using Dos style liine endings

using for example gedit
re-save using Unix/Linux line endings will solve one problem as shown

run sudo apt-get build-dep emc2
should help finding any missing packages
you do not say which version of emc you are compiling for , or if you are using the development version from GIT
this would help


I have installed the packages with apt-get build-dep but when I run emc2 I have also:

>arm_inversa.hal:4: Warning: File contains DOS-style line endings.
>insmod: error inserting '/home/cnc/emc2-dev/rtlib/armkins.ko': -1 Unknown symbol in module
>arm_inversa.hal:5: exit value: 1
>arm_inversa.hal:5: insmod failed, returned -1

I'm using ubuntu 10.4 emc2 2.4.6, developement version....

Please Log in or Create an account to join the conversation.

More
10 Jan 2012 15:26 #16529 by andypugh
honey wrote:

insmod: error inserting '/home/cnc/emc2-dev/rtlib/armkins.ko': -1 Unknown symbol in module


This might well mean that the line in the HAL file which loads armkins has a parameter after it which does not match the code.
(for example, a joint length called one thing, when the code uses a different name).

I think it might also be that the kinematics file name and what the module calls itself internally might not match.
For example, in git.linuxcnc.org/gitweb?p=emc2.git;a=blo...9f90d9bf3b40ce548cc7
there is the line 347 comp_id = hal_init("pumakins");

Your kinematics file name needs to match the comp_id.

Please Log in or Create an account to join the conversation.

More
10 Jan 2012 15:50 #16530 by honey
andypugh wrote:
[For example, in git.linuxcnc.org/gitweb?p=emc2.git;a=blo...9f90d9bf3b40ce548cc7
there is the line 347 comp_id = hal_init("pumakins");

Your kinematics file name needs to match the comp_id.[/quote]

I check that line and I have changed already the line in comp_id=hal_init("armkins")

I think that the problem could be how I wrote the kinematics of the robot. I am not so expert. Where I can post my file and if someone wants, he can help me?

Please Log in or Create an account to join the conversation.

More
10 Jan 2012 16:01 #16532 by andypugh
honey wrote:

I think that the problem could be how I wrote the kinematics of the robot. I am not so expert. Where I can post my file and if someone wants, he can help me?


Attach the kinematics file to a reply, and also tell us what the format is of the line which loads the kinematics in the HAL file.

If we can reproduce the problem we would be half way to solving it.

Please Log in or Create an account to join the conversation.

More
10 Jan 2012 16:17 #16533 by PKM
You know, I was never successful to compile a new kinematics file within run-in-place EMC2 install.
If you just add the new file to source/emc/kinematics folder, it is not compiled with make.
I'm not a programmer, but I think that any kinematics file should be specified in some file list to be compiled (the developers can explain this better).

It would be easier to use comp and installed EMC2 version, but comp works with very simple kinematic files only, without included libraries.

Here's a trivial solution: make a backup copy of any existing kinematics file and change it to what you want. It compiles just fine.

Please Log in or Create an account to join the conversation.

More
10 Jan 2012 16:24 #16534 by andypugh
PKM wrote:

You know, I was never successful to compile a new kinematics file within run-in-place EMC2 install.
If you just add the new file to source/emc/kinematics folder, it is not compiled with make.


I think that they are, in general, but genserkins is a special case.
The submakefile controls the compilation of the modules in the kinematics folder:
git.linuxcnc.org/gitweb?p=emc2.git;a=blo...86818a2edce346bb45ed
And I think that any generic .c file will be automatically compiled if it doesn't have any complex dependencies (genserkins does have dependencies)

Please Log in or Create an account to join the conversation.

More
10 Jan 2012 16:42 #16535 by PKM
I experimented much with genhexkins, it also has dependencies and it was never compiled when renamed.

Please Log in or Create an account to join the conversation.

Time to create page: 0.145 seconds
Powered by Kunena Forum