petercorke / robotics-toolbox-matlab

Robotics Toolbox for MATLAB
GNU Lesser General Public License v2.1
1.26k stars 440 forks source link

Octave issues #25

Closed doctorcolossus closed 5 years ago

doctorcolossus commented 6 years ago

I'm attempting to install version 10.2 of the Toolbox on the latest Octave 4.2.1 in Arch Linux.

I've never used MatLab, Octave, or the Robotics Toolbox before, so I hope I'm not overlooking anything obvious.

I followed the directions in the readme, extracting rvctools to /usr/share/octave/4.2.1/m. I then copied '@Link', '@SerialLink', and '@Quaternion' to /usr/share/octave/4.2.1/m/rvctools/robot.

Calling mdl_puma560 as suggested in the readme yields the following error:

>> mdl_puma560
error: class not found: Link
error: called from
    mdl_puma560 at line 78 column 6

I tried renaming '@Link', '@SerialLink', and '@Quaternion' to 'Link', 'SerialLink', and 'Quaternion' respectively. Then the classes seem to be recognized, but this results in a series of warnings on startup:

warning: function /usr/share/octave/4.2.1/m/rvctools/robot/Link/subsasgn.m shadows a built-in function
warning: function /usr/share/octave/4.2.1/m/rvctools/robot/Link/subsref.m shadows a built-in function
warning: function /usr/share/octave/4.2.1/m/rvctools/robot/Link/char.m shadows a built-in function
warning: function /usr/share/octave/4.2.1/m/rvctools/robot/Quaternion/double.m shadows a built-in function
warning: function /usr/share/octave/4.2.1/m/rvctools/robot/Quaternion/plus.m shadows a built-in function
warning: function /usr/share/octave/4.2.1/m/rvctools/robot/Quaternion/minus.m shadows a built-in function
warning: function /usr/share/octave/4.2.1/m/rvctools/robot/Quaternion/dot.m shadows a built-in function
warning: function /usr/share/octave/4.2.1/m/rvctools/robot/Quaternion/mrdivide.m shadows a built-in function
warning: function /usr/share/octave/4.2.1/m/rvctools/robot/Quaternion/norm.m shadows a built-in function
warning: function /usr/share/octave/4.2.1/m/rvctools/robot/Quaternion/mtimes.m shadows a built-in function
warning: function /usr/share/octave/4.2.1/m/rvctools/robot/Quaternion/inv.m shadows a built-in function
warning: function /usr/share/octave/4.2.1/m/rvctools/robot/Quaternion/mpower.m shadows a built-in function

I am not sure if this is the expected behavior or if I have broken something...

However, now the mdl_puma560 command gets a little further, finding the class, but returning a different error:

>> mdl_puma560
parse error near line 261 of file /usr/share/octave/4.2.1/m/rvctools/robot/Link.m

  syntax error

>>>                     p = properties(this(j));
                                     ^

error: called from
    mdl_puma560 at line 78 column 6

I am a complete beginner, so I don't know what is wrong with that syntax. I am not sure if the problem stems only from my ignorance, or perhaps from some change in Octave since the Toolbox patch was initially released, since that was now six years ago.

Thanks in advance for any support.

sashan13 commented 6 years ago

I ran into the same error. Would be nice to at least have some tips on how to fix it.

petercorke commented 5 years ago

I just don’t have the resources to keep the Octave port alive, but would be happy to accept contributions. Check out this project https://github.com/gedeschaines/robotics-toolbox-python/tree/update1/Octave which is renovating the old python and Octave code.

IronFist16 commented 4 years ago

Anyone managed to fix this issue?