resilient-swarms / thymio

Thymio simulator based on ARGoS framework
2 stars 2 forks source link

ci_sensor.h:23:10: fatal error: lua.h: does not exist #6

Open alacalcasis opened 3 years ago

alacalcasis commented 3 years ago

When trying to install i'm getting the following message:

/usr/local/include/argos3/core/control_interface/ci_sensor.h:23:10: fatal error: lua.h: does not exist

But Lua is actually correctly installed and previous installation of kheperaiv and kilobot plugins worked out.

Thank you in advance for any help, best regards,

Alan Calderon

bossdm commented 3 years ago

Hi Alan,

It seems that you might need to specify the LUA_DIR environment variable.

Lua is being checked in the file cmake/ARGoSBuildChecks.cmake l.21-28. If the package Lua cannot be found automatically, the include path is set via $ENV{LUA_DIR}/include. So you could do

export LUA_DIR=<your lua folder>

in your .bashrc file or you could even provide the LUA include path directly in ` cmake/ARGoSBuildChecks.cmake.

Hope that will work for you.

alacalcasis commented 3 years ago

Thank you for your answer but it didn't work. I added export LUA_DIR=... to .bashrc file, confirmed it correct with printenv LUA_DIR. I even added LUA_INCLUDE_DIR because of: if(LUA53_FOUND) include_directories(${LUA_INCLUDE_DIR}) in cmake/ARGoSBuildChecks.cmake but the message is still /usr/local/include/argos3/core/control_interface/ci_sensor.h:23:10: fatal error: lua.h: does not exist

And by the way i made source ~/.bashrc. Any other suggestion will be welcomed. Best regards,

Alan

alacalcasis commented 3 years ago

I also added the path directly to cmake/ARGoSBuildChecks.cmake, didn't work either.

alacalcasis commented 3 years ago

Well, after many hours trying out different possibilities finally found out a silly error i made when doing cmake command. Everything seems to be OK now, sorry for making you loose time, and thank you very much for your help!

bossdm commented 3 years ago

Good to hear you have solved the problem, and enjoy the library.

All the best.

AshwinRaviraj commented 3 years ago

Hi, It seems like I'm having more or less the same issue as Alan.. `/usr/local/include/argos3/core/control_interface/ci_sensor.h:23:10: fatal error: 'lua.h' file not found

include

     ^~~~~~~

1 error generated.`

I have tried to add /usr/local/include/lua.h I still get the error?

Any ideas to how I can solve this issue?

/Ashwin

bossdm commented 3 years ago

I tried a fresh reinstall and no problems.

I think it might be a problem with the argos installation.

I see in my argos3 build the following cmake cache variables:

build/CMakeCache.txt:LUA_INCLUDE_DIR:PATH=/usr/include/lua5.3 build/CMakeCache.txt:LUA_LIBRARIES:STRING=/usr/lib/x86_64-linux-gnu/liblua5.3.so;/usr/lib/x86_64-linux-gnu/libm.so build/CMakeCache.txt:LUA_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/liblua5.3.so build/CMakeCache.txt:LUA_MATH_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/libm.so

Can you check if these are in your argos3/build/CMakeCache.txt ?

AshwinRaviraj commented 3 years ago

These are my paths LUA_INCLUDE_DIR:PATH=/usr/local/include/lua LUA_LIBRARIES:STRING=/usr/local/lib/liblua.dylib LUA_LIBRARY:FILEPATH=/usr/local/lib/liblua.dylib I have no LUA_MATH_LIBARY

Should I try to re-clone the repository

bossdm commented 3 years ago

hi, according to your include directory, the include file you should be adding is /usr/local/include/lua/lua.h rather than /usr/local/include/lua.h?

bossdm commented 3 years ago

also the version is not 5.3 not sure how fatal this is though.

AshwinRaviraj commented 3 years ago

I did a reinstall of everything and now I get the following: LUA_INCLUDE_DIR:PATH=LUA_INCLUDE_DIR-NOTFOUND LUA_LIBRARY:FILEPATH=LUA_LIBRARY-NOTFOUND

bossdm commented 3 years ago

So if I understand you correctly, you reinstalled argos, then tried reinstalling thymio but got an error and for thymio's CMakeCache you observed these values.

If so, then can you try setting the environment variable export LUA_DIR=/usr/local

AshwinRaviraj commented 3 years ago

I added this to my bashrc export LUA_DIR=/usr/local/include/lua/

Getting the same error, and I did use source on the file to refresh it

bossdm commented 3 years ago

the line in cmake is adding "include" at the back so this does not work when your directory ends in lua/

I can remove the "include" tag and then that should work

bossdm commented 3 years ago

I removed the "include" tag. can you pull the latest version and see if it works?

AshwinRaviraj commented 3 years ago

Alright, I will try

AshwinRaviraj commented 3 years ago

IT WORKS! Thanks

bossdm commented 3 years ago

great, I also saw some post about not finding the test experiment. this can happen if forgetting the sudo make install.

AshwinRaviraj commented 3 years ago

Yes! It works and the simulation runs :)