counter free hit invisible

Log in or sign up


USER:
PASS:

 
 
Forums
Tarek Taha :: Forums :: Sofware Support :: MRICP
 
<< Previous thread | Next thread >>
Compilation errors
Moderators: Tarek Taha, Gloden Wing
Author Post
Yasir
Fri Jul 31 2009, 05:15AM
Registered Member #43
Joined: Wed Jul 29 2009, 12:13PM
Posts: 2
Hi, I downloaded MRICP 2.0 from your website, extracted it and compiled it. But it gave this list of errors:

home(abc/downloads/MRICP 2.0$ make
echo /lib/libplayerclient.a
/lib/libplayerclient.a
g++ -Wall -fpic -g3  `pkg-config --cflags gtk+-2.0 playercore playerc++` -c src/*.cpp -Iinclude -I/usr/local/include -I/usr/local/include/player
src/mricp_driver.cpp: In member function ‘int MrIcpDriver::SetupLaser(int)’:
src/mricp_driver.cpp:597: error: ‘struct player_pose3d_t’ has no member named ‘pa’
src/mricp_driver.cpp: In member function ‘int MrIcpDriver::HandleConfigs(MessageQueue*, player_msghdr*, void*)’:
src/mricp_driver.cpp:817: error: invalid conversion from ‘MessageQueue*’ to ‘uint8_t’
src/mricp_driver.cpp:817: error:   initializing argument 2 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:817: error: invalid conversion from ‘int’ to ‘void*’
src/mricp_driver.cpp:817: error:   initializing argument 4 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:817: error: invalid conversion from ‘void*’ to ‘size_t’
src/mricp_driver.cpp:817: error:   initializing argument 5 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:817: error: invalid conversion from ‘unsigned int’ to ‘double*’
src/mricp_driver.cpp:817: error:   initializing argument 6 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:824: error: ‘struct player_pose3d_t’ has no member named ‘pa’
src/mricp_driver.cpp:828: error: invalid conversion from ‘MessageQueue*’ to ‘uint8_t’
src/mricp_driver.cpp:828: error:   initializing argument 2 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:828: error: invalid conversion from ‘int’ to ‘void*’
src/mricp_driver.cpp:828: error:   initializing argument 4 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:828: error: invalid conversion from ‘void*’ to ‘size_t’
src/mricp_driver.cpp:828: error:   initializing argument 5 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:828: error: invalid conversion from ‘unsigned int’ to ‘double*’
src/mricp_driver.cpp:828: error:   initializing argument 6 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:841: error: invalid conversion from ‘MessageQueue*’ to ‘uint8_t’
src/mricp_driver.cpp:841: error:   initializing argument 2 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:841: error: invalid conversion from ‘int’ to ‘void*’
src/mricp_driver.cpp:841: error:   initializing argument 4 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:841: error: invalid conversion from ‘void*’ to ‘size_t’
src/mricp_driver.cpp:841: error:   initializing argument 5 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:841: error: invalid conversion from ‘unsigned int’ to ‘double*’
src/mricp_driver.cpp:841: error:   initializing argument 6 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:852: error: invalid conversion from ‘MessageQueue*’ to ‘uint8_t’
src/mricp_driver.cpp:852: error:   initializing argument 2 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:852: error: invalid conversion from ‘int’ to ‘void*’
src/mricp_driver.cpp:852: error:   initializing argument 4 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:865: error: invalid conversion from ‘MessageQueue*’ to ‘uint8_t’
src/mricp_driver.cpp:865: error:   initializing argument 2 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:865: error: invalid conversion from ‘int’ to ‘void*’
src/mricp_driver.cpp:865: error:   initializing argument 4 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:865: error: invalid conversion from ‘void*’ to ‘size_t’
src/mricp_driver.cpp:865: error:   initializing argument 5 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:865: error: invalid conversion from ‘unsigned int’ to ‘double*’
src/mricp_driver.cpp:865: error:   initializing argument 6 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp: In member function ‘int MrIcpDriver::HandleCommands(MessageQueue*, player_msghdr*, void*)’:
src/mricp_driver.cpp:903: error: invalid conversion from ‘MessageQueue*’ to ‘uint8_t’
src/mricp_driver.cpp:903: error:   initializing argument 2 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:903: error: invalid conversion from ‘int’ to ‘void*’
src/mricp_driver.cpp:903: error:   initializing argument 4 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:903: error: invalid conversion from ‘void*’ to ‘size_t’
src/mricp_driver.cpp:903: error:   initializing argument 5 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:903: error: invalid conversion from ‘unsigned int’ to ‘double*’
src/mricp_driver.cpp:903: error:   initializing argument 6 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp: In member function ‘int MrIcpDriver::ProcessMapInfoReq(MessageQueue*, player_msghdr*, void*)’:
src/mricp_driver.cpp:929: error: invalid conversion from ‘MessageQueue*’ to ‘uint8_t’
src/mricp_driver.cpp:929: error:   initializing argument 2 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:929: error: invalid conversion from ‘int’ to ‘void*’
src/mricp_driver.cpp:929: error:   initializing argument 4 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:929: error: invalid conversion from ‘void*’ to ‘size_t’
src/mricp_driver.cpp:929: error:   initializing argument 5 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:929: error: invalid conversion from ‘unsigned int’ to ‘double*’
src/mricp_driver.cpp:929: error:   initializing argument 6 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp: In member function ‘int MrIcpDriver::ProcessMapDataReq(MessageQueue*, player_msghdr*, void*)’:
src/mricp_driver.cpp:1008: error: ‘PLAYER_MAP_MAX_TILE_SIZE’ was not declared in this scope
src/mricp_driver.cpp:1064: error: invalid conversion from ‘MessageQueue*’ to ‘uint8_t’
src/mricp_driver.cpp:1064: error:   initializing argument 2 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:1064: error: invalid conversion from ‘int’ to ‘void*’
src/mricp_driver.cpp:1064: error:   initializing argument 4 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:1064: error: invalid conversion from ‘void*’ to ‘size_t’
src/mricp_driver.cpp:1064: error:   initializing argument 5 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:1064: error: invalid conversion from ‘size_t’ to ‘double*’
src/mricp_driver.cpp:1064: error:   initializing argument 6 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp: In member function ‘void MrIcpDriver::RefreshData()’:
src/mricp_driver.cpp:1079: error: invalid conversion from ‘int’ to ‘void*’
src/mricp_driver.cpp:1079: error:   initializing argument 4 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:1079: error: invalid conversion from ‘void*’ to ‘size_t’
src/mricp_driver.cpp:1079: error:   initializing argument 5 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
src/mricp_driver.cpp:1079: error: invalid conversion from ‘unsigned int’ to ‘double*’
src/mricp_driver.cpp:1079: error:   initializing argument 6 of ‘virtual void Driver::Publish(player_devaddr_t, uint8_t, uint8_t, void*, size_t, double*, bool)’
make: *** [MrIcpDriver] Error 1
Back to top

wtrieu
Tue Aug 18 2009, 03:31AM
Registered Member #44
Joined: Tue Aug 18 2009, 03:25AM
Posts: 2
Hello,
I am getting the same errors as Yasir. Using player 2.1.2 and stages 3.1.0. Any ideas on how to resolve this problem?

William
Back to top

Tarek Taha
Wed Aug 19 2009, 05:03AM

Registered Member #1
Joined: Sat May 05 2007, 07:02AM
Posts: 8
Hi guys,

You no longer need to download and compile the driver yourself, It's already an official driver in playerstage, so if you have player 2.1+ installed then all you need to do is use the "mricp" driver. Check this : http://playerstage.sourceforge.net/doc/Player-2.1.0/player/group__ComponentNavigator.html
http://playerstage.sourceforge.net/doc/Player-cvs/player/group__ComponentNavigator.html

Hope this helps,
Tarek
Back to top

wtrieu
Sun Aug 23 2009, 04:41AM
Registered Member #44
Joined: Tue Aug 18 2009, 03:25AM
Posts: 2
Hello Tarek, I recently upgraded to player 3.0.0 rc3 and when i try to run the stage example of mricp i get this error:

wtrieu@ubuntu:~/player-3.0.0-rc3/server/drivers/mixed/mricp/stage_test$ player stage_mricp.cfg
Registering driver
Player v.3.0.0-rc3

 * Part of the Player/Stage/Gazebo Project
[http://playerstage.sourceforge.net].
* Copyright (C) 2000 - 2009 Brian Gerkey, Richard Vaughan, Andrew Howard,
* Nate Koenig, and contributors. Released under the GNU General Public License.
* Player comes with ABSOLUTELY NO WARRANTY. This is free software, and you
* are welcome to redistribute it under certain conditions; see COPYING
* for details.

invoking player_driver_init()...
 Stage driver plugin init

** Stage plugin v3.1.0 **
* Part of the Player Project [http://playerstage.sourceforge.net]
* Copyright 2000-2009 Richard Vaughan, Brian Gerkey and contributors.
* Released under the GNU General Public License v2.

success
 Stage plugin: 6665.simulation.0 is a Stage world
 [Loading ./rescue.world][Include homer.inc][Include map.inc]

 Stage plugin: 6665.position2d.0 is "robot"
  Stage plugin: 6665.laser.0 is "robot.laser:0"

 Laser:0 Range:0 begins:-120 ends:120stage driver setup

 Laser[0] Pose --> X=0 Y=0 Theta=0
 LASER Interface Loaded Success index:0stage_mricp.cfg:41 warning: field [sanitycheck_distance] is defined but not used
 stage_mricp.cfg:42 warning: field [sanitycheck_angle] is defined but not used

- Setting UP MRICP Plugin Driver.
       --->>> Creating Image Pixel Buffer:logs/MAP_PATCH0listening on 6665
Listening on ports: 6665
       --->>> MAP Created with Height=401 Width=400 Resolution=0.050 <<<---

player: /home/wtrieu/player-3.0.0-rc3/server/drivers/mixed/mricp/src/icp.cpp:88: Geom2D::Pose Geom2D::ICP::align(std::vector >, std::vector >, Geom2D::Pose, double, int, bool):
Assertion `index.size() == 2' failed. Aborted

Any ideas?

Thanks, William

[ Edited Sun Aug 23 2009, 04:48AM ]
Back to top

Tarek Taha
Thu Feb 11 2010, 10:58PM

Registered Member #1
Joined: Sat May 05 2007, 07:02AM
Posts: 8
This is a bug introduced by "gbiggs" while trying to suppress the warning messages ( http://playerstage.svn.sourceforge.net/viewvc/playerstage/code/player/trunk/server/drivers/mixed/mricp/src/icp.cpp?r1=4251&r2=7610 ), an extra "index.push_back(0);" which triggers the assertion. I've contacted Toby to correct it and it will be pushed to the svn and latest playerstage releases.

Regards,
Tarek
Back to top

 

Jump:     Back to top

Syndicate this thread: rss 0.92 Syndicate this thread: rss 2.0 Syndicate this thread: RDF
Powered by e107 Forum System