Git Product home page Git Product logo

Comments (26)

ilpincy avatar ilpincy commented on August 18, 2024

Can you tell me more about your project? For instance, use gdb to know where the segfault happens?

from argos3.

mbt925 avatar mbt925 commented on August 18, 2024

I compiled ARGoS in release mode. Can I use gdb in this mode?

Also, I noticed that I am getting a black screen when running all ARGoS built-in examples, like synchronization, foraging, etc. The following screenshot belongs to synchronization examples.

ubuntu 64-bit 17 04-2018-02-05-12-36-14

from argos3.

allsey87 avatar allsey87 commented on August 18, 2024

@mbt925 you will need to build the simulator in debug mode to get meaningful output from GDB. Could you do this and provide a backtrace for the segfault?

from argos3.

mbt925 avatar mbt925 commented on August 18, 2024
(gdb) where
#0  0x00005555558661d8 in ?? ()
#1  0x00007ffff3248fb8 in argos::CBatteryEquippedEntity::~CBatteryEquippedEntity() () from /usr/local/lib/argos3/libargos3plugin_simulator_entities.so
#2  0x00007ffff3248fe0 in argos::CBatteryEquippedEntity::~CBatteryEquippedEntity() () from /usr/local/lib/argos3/libargos3plugin_simulator_entities.so
#3  0x00007ffff324e59b in void argos::CSpace::RemoveEntity<argos::CBatteryEquippedEntity>(argos::CBatteryEquippedEntity&) ()
   from /usr/local/lib/argos3/libargos3plugin_simulator_entities.so
#4  0x00007ffff324c383 in argos::CSpaceOperationRemoveCBatteryEquippedEntity::ApplyTo(argos::CSpace&, argos::CBatteryEquippedEntity&) ()
   from /usr/local/lib/argos3/libargos3plugin_simulator_entities.so
#5  0x00007ffff3250135 in void argos::CEntityOperation<argos::CSpaceOperationRemoveEntity, argos::CSpace, void>::Dispatch<argos::CBatteryEquippedEntity, argos::CSpaceOperationRemoveCBatteryEquippedEntity>(argos::CSpace&, argos::CEntity&)
    () from /usr/local/lib/argos3/libargos3plugin_simulator_entities.so
#6  0x00007ffff324e7d7 in void argos::CEntityOperation<argos::CSpaceOperationRemoveEntity, argos::CSpace, void>::Hook<argos::CBatteryEquippedEntity, argos::CSpaceOperationRemoveCBatteryEquippedEntity>(argos::CSpace&, argos::CEntity&) ()
   from /usr/local/lib/argos3/libargos3plugin_simulator_entities.so
#7  0x00007ffff7b2cd93 in void argos::CallEntityOperation<argos::CSpaceOperationRemoveEntity, argos::CSpace, void>(argos::CSpace&, argos::CEntity&) ()
   from /usr/local/lib/argos3/libargos3core_simulator.so
#8  0x00007fffe9bd07e3 in argos::CSpaceOperationRemoveCEPuckEntity::ApplyTo(argo---Type <return> to continue, or q <return> to quit---
s::CSpace&, argos::CEPuckEntity&) ()
   from /usr/local/lib/argos3/libargos3plugin_simulator_epuck.so
#9  0x00007fffe9bd3e6b in void argos::CEntityOperation<argos::CSpaceOperationRemoveEntity, argos::CSpace, void>::Dispatch<argos::CEPuckEntity, argos::CSpaceOperationRemoveCEPuckEntity>(argos::CSpace&, argos::CEntity&) ()
   from /usr/local/lib/argos3/libargos3plugin_simulator_epuck.so
#10 0x00007fffe9bd230b in void argos::CEntityOperation<argos::CSpaceOperationRemoveEntity, argos::CSpace, void>::Hook<argos::CEPuckEntity, argos::CSpaceOperationRemoveCEPuckEntity>(argos::CSpace&, argos::CEntity&) ()
   from /usr/local/lib/argos3/libargos3plugin_simulator_epuck.so
#11 0x00007ffff7b2cd93 in void argos::CallEntityOperation<argos::CSpaceOperationRemoveEntity, argos::CSpace, void>(argos::CSpace&, argos::CEntity&) ()
   from /usr/local/lib/argos3/libargos3core_simulator.so
#12 0x00007ffff7b74b9d in argos::CSpace::Destroy() ()
   from /usr/local/lib/argos3/libargos3core_simulator.so
#13 0x00007ffff7b2fe30 in argos::CSimulator::Destroy() ()
   from /usr/local/lib/argos3/libargos3core_simulator.so
#14 0x0000555555570b85 in main ()

from argos3.

mbt925 avatar mbt925 commented on August 18, 2024

Segmentation fault only occurs when closing the simulator with epuck related project. So I think the problem is related to the epuck plugin. But black screen occurs with all of the samples.

from argos3.

allsey87 avatar allsey87 commented on August 18, 2024

Well looking at the last couple of frames from the backtrace, it can be concluded that the destructor calling delete on m_pcDischargeModel is the cause of the segfault. This should be a quick fix, since, at a guess, we are trying to delete something that has already been deleted.

As for the black regions in the simulator, could you provide us with some information about your OS, graphics card, and OpenGL version?

from argos3.

mbt925 avatar mbt925 commented on August 18, 2024

Thank you for investigating the issue. I am using VMware with Ubuntu 17.04.
OpenGL version string: 3.0 Mesa 17.0.7

from argos3.

allsey87 avatar allsey87 commented on August 18, 2024

@mbt925 thank you for the information. You mentioned that you pulled in the latest changes, can you give us the commit id from the last time you pull changes from the github repo?

from argos3.

mbt925 avatar mbt925 commented on August 18, 2024

commit 6d3d3ec

from argos3.

mbt925 avatar mbt925 commented on August 18, 2024

I pulled in the last commit and the black region is gone.

from argos3.

mbt925 avatar mbt925 commented on August 18, 2024

Is this fixed?

from argos3.

ilpincy avatar ilpincy commented on August 18, 2024

I had about 50 new users since this bug report, and nobody else reported this issue. I can't reproduce it either.

from argos3.

mbt925 avatar mbt925 commented on August 18, 2024

Can you run a simple test with the e-puck robot?

I uploaded my sample here.

from argos3.

ilpincy avatar ilpincy commented on August 18, 2024

I can't compile the code you sent me using the base e-puck model in ARGoS:

In file included from /Users/pincy/Fabrica/ARGoS/argos3-examples/controllers/epuck_aggregation/epuck_aggregation.cpp:2:
/Users/pincy/Fabrica/ARGoS/argos3-examples/controllers/epuck_aggregation/epuck_aggregation.h:22:10: fatal error: 
  'argos3/plugins/robots/e-puck/control_interface/ci_epuck_wheels_actuator.h' file not found
#include <argos3/plugins/robots/e-puck/control_interface/ci_epuck_wheels_actuator.h>

Are you using the extension made at IRIDIA? If that's the case, it's likely that the error you're getting is due to something wrong in that codebase. You should contact the maintainer of that code.

Anyway, I changed your code so now it compiles, and it works perfectly on my machine.

from argos3.

mbt925 avatar mbt925 commented on August 18, 2024

Is there an epuck model in ARGoS?
I am using this plugin:
https://github.com/lgarattoni/argos3-epuck

Where is the code you modified? 😊

from argos3.

ilpincy avatar ilpincy commented on August 18, 2024

Yes, there is a model of the e-puck in ARGoS. Just type argos3 -q entities, or (better) get acquainted with the ARGoS file structure by checking the code.

The code you're using is an extension made for the e-puck with the Overo board. You don't need that extension for the type of experiment you're running. The segfault you get is due to some issue with that extension. Contact Lorenzo Garattoni to have it fixed.

The fix I made to your code was to use the generic differential steering actuator and the generic proximity sensor, only to allow for compilation to finish. Nothing fancy.

from argos3.

mbt925 avatar mbt925 commented on August 18, 2024

The code I uploaded is just a sample to illustrate the bug.
My project needs a full epuck model. Can I get that using the ARGoS epuck? I need proximity sensors, ground sensor, omni camera, led actuators and...

from argos3.

ilpincy avatar ilpincy commented on August 18, 2024

All of that stuff is part of the Overo board, so - as I wrote above - you need to contact Lorenzo Garattoni.

from argos3.

mbt925 avatar mbt925 commented on August 18, 2024

You're right. I created multiple issues on the plugin github page a couple weeks ago, but no one responded.

from argos3.

ilpincy avatar ilpincy commented on August 18, 2024

I tested it on Mac and I get the same error you do. It's a bug in that repository. I'll see if I can find a fix.

from argos3.

mbt925 avatar mbt925 commented on August 18, 2024

I am sorry for this, as it is not directly related to ARGoS. It would be GREAT if you could find a fix.

from argos3.

ilpincy avatar ilpincy commented on August 18, 2024

There is a problem with conflicting names, because they have added a CBatteryEntity that clashes with the one provided by ARGoS. Even fixing this and other naming issues, there's a problem I can't identify in CEpuckRabEquippedEntity. When I comment out the line that adds it to a robot, everything works. I don't have much time left to work on this today. I'll see what I can do in the next days.

from argos3.

mbt925 avatar mbt925 commented on August 18, 2024

Thank you for your time. I am looking forward to it. My project is frozen because of this bug.

from argos3.

ilpincy avatar ilpincy commented on August 18, 2024

I fixed the issue. I made a pull request in the main repo, but until they accept the pull request you can get the fixed code here: https://github.com/ilpincy/argos3-epuck.

from argos3.

ilpincy avatar ilpincy commented on August 18, 2024

They merged the pull request.

from argos3.

mbt925 avatar mbt925 commented on August 18, 2024

Thank you very much. It's OK now.

from argos3.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.