Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is it possible to compile this in an ARM platform? #8

Closed
TSC21 opened this issue Aug 12, 2014 · 9 comments
Closed

Is it possible to compile this in an ARM platform? #8

TSC21 opened this issue Aug 12, 2014 · 9 comments

Comments

@TSC21
Copy link

TSC21 commented Aug 12, 2014

I already tried but it gives me issues on libfovis related to -msse2 and -msse3, which are x86 compatible only. Is there any way of pull a solution to this?

Thanks!

@stwirth
Copy link
Contributor

stwirth commented Aug 12, 2014

Don't know, never tried.

I can see a FOVIS_USE_SSE flag here: https://code.google.com/p/fovis/source/browse/libfovis/libfovis/intensity_descriptor.cpp

You can install (our fork of) libfovis from source (https://github.com/srv/libfovis) to play with compiler switches.

@stwirth stwirth closed this as completed Aug 12, 2014
@stwirth
Copy link
Contributor

stwirth commented Aug 12, 2014

Just saw that the original fork got updated quite a bit, the README does not state SSE2 as a requirement any more.

https://code.google.com/p/fovis/source/browse/libfovis/README

@TSC21
Copy link
Author

TSC21 commented Aug 12, 2014

Thanks mate! I will try to compile libfovis withou that flag and see the result ;)
I will let you know!

@TSC21
Copy link
Author

TSC21 commented Aug 12, 2014

Ok I tried what is suggested in http://code.google.com/p/fovis/source/browse/libfovis/README, but it really doesn't work since it continued to ask for emmintrin.h. So I deleted all the includes of this library on the files that had it and it complied ok.

@TSC21
Copy link
Author

TSC21 commented Aug 12, 2014

Well I opted for using the libfovis repo of ROS and compile it together with fovis with catkin_make. Since the Cmake option didn't work, I also removed all the emmintrin.h references on code. Issuing catkin_makeon my ws I get:

In file included from /home/linaro/AIMAVProject_ws/src/pose_estimation_pkgs/fovis/libfovis/libfovis/motion_estimation.cpp:16:0:
/home/linaro/AIMAVProject_ws/src/pose_estimation_pkgs/fovis/libfovis/libfovis/sad.hpp: In member function 'int32_t fovis::SAD::score(const uint8_t*, const uint8_t*)':
/home/linaro/AIMAVProject_ws/src/pose_estimation_pkgs/fovis/libfovis/libfovis/sad.hpp:45:20: error: 'descriptor_len' was not declared in this scope
/home/linaro/AIMAVProject_ws/src/pose_estimation_pkgs/fovis/libfovis/libfovis/intensity_descriptor.cpp: In member function 'void fovis::IntensityDescriptorExtractor::normalizeDescriptor(uint8_t*) const':
/home/linaro/AIMAVProject_ws/src/pose_estimation_pkgs/fovis/libfovis/libfovis/intensity_descriptor.cpp:121:9: error: '__m128i' was not declared in this scope
/home/linaro/AIMAVProject_ws/src/pose_estimation_pkgs/fovis/libfovis/libfovis/intensity_descriptor.cpp:121:17: error: expected primary-expression before ')' token
/home/linaro/AIMAVProject_ws/src/pose_estimation_pkgs/fovis/libfovis/libfovis/intensity_descriptor.cpp:121:18: error: expected ')' before 'desc'
/home/linaro/AIMAVProject_ws/src/pose_estimation_pkgs/fovis/libfovis/libfovis/intensity_descriptor.cpp:127:9: error: '__m128i' was not declared in this scope
/home/linaro/AIMAVProject_ws/src/pose_estimation_pkgs/fovis/libfovis/libfovis/intensity_descriptor.cpp:127:17: error: expected primary-expression before ')' token
/home/linaro/AIMAVProject_ws/src/pose_estimation_pkgs/fovis/libfovis/libfovis/intensity_descriptor.cpp:127:18: error: expected ')' before 'desc'
[ 42%] Built target px_comm_generate_messages_lisp
[ 45%] Built target px_comm_generate_messages_py
[ 45%] Built target px_comm_gencpp

Gets no declarations of descriptor_len and __m128i. The only thing I did on motion_estimation.cppwas removing the USE_SSE definitions and the IFDEF related.
I think this can be corrected on build time by adding a cmake option to catkin_make but catkin_make -DUSE_SSE=OFF doesn't do nothing.

@miquelmassot @plnegre can you also give an help in here? Thanks!

Note: So I think this issue is not really closed.

@TSC21
Copy link
Author

TSC21 commented Aug 16, 2014

Well no one wants to bother? Seems your platform has it's own issues and you don't want to resolve them. I repeat that catkin_make -DUSE_SSE=OFF option doesn't deactivate the use of sse flags on compile time.

@stwirth
Copy link
Contributor

stwirth commented Aug 18, 2014

Although we developed the ROS wrapper for fovis some time ago we are not actively developing it. It fits the purpose for our project. I'm working (and getting payed) on a totally different thing now.
If you figure out how this wrapper can be improved, please do so and open a pull-request.

@zardchim
Copy link

zardchim commented Nov 5, 2014

@TSC21
Following your route and I am able to compile the code on Jetson Tk1 board.

I have installed ROS on jetson tk1 and am going to test it

@y22ma
Copy link

y22ma commented Jan 25, 2015

@zardchim Sweet! What are the steps you took?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants