Skip to content

Cannot install - error related to linking #48

@Velythyl

Description

@Velythyl

Hello!

Thank you for writing this library. I want to control the Go1 robot's low level controller using python.

But I cannot install this library (see attached log)

┌─[charlie@pop-os] - [~/Desktop/unitree_legged_latest_sdk/build] - [2022-07-13 04:59:43]
└─[0] <git:(master 1304ed0✈) > make
[ 10%] Building CXX object CMakeFiles/example_position.dir/example/example_position.cpp.o
In file included from /usr/include/boost/smart_ptr/detail/sp_thread_sleep.hpp:22,
                 from /usr/include/boost/smart_ptr/detail/yield_k.hpp:23,
                 from /usr/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14,
                 from /usr/include/boost/smart_ptr/detail/spinlock.hpp:42,
                 from /usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:25,
                 from /usr/include/boost/smart_ptr/shared_ptr.hpp:29,
                 from /usr/include/boost/shared_ptr.hpp:17,
                 from /home/charlie/Desktop/unitree_legged_latest_sdk/include/unitree_legged_sdk/loop.h:14,
                 from /home/charlie/Desktop/unitree_legged_latest_sdk/include/unitree_legged_sdk/unitree_legged_sdk.h:11,
                 from /home/charlie/Desktop/unitree_legged_latest_sdk/example/example_position.cpp:5:
/usr/include/boost/bind.hpp:36:1: note: ‘#pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global namespace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior.’
   36 | BOOST_PRAGMA_MESSAGE(
      | ^~~~~~~~~~~~~~~~~~~~
[ 20%] Linking CXX executable example_position
/usr/bin/ld: /home/charlie/Desktop/unitree_legged_latest_sdk/lib/cpp/amd64/libunitree_legged_sdk.a(loop.cpp.o): relocation R_X86_64_PC32 against undefined hidden symbol `_ZTCN5boost10wrapexceptINS_17bad_function_callEEE0_NS_16exception_detail10clone_implINS3_19error_info_injectorIS1_EEEE' can not be used when making a PIE object
/usr/bin/ld: final link failed: bad value
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/example_position.dir/build.make:97: example_position] Error 1
make[1]: *** [CMakeFiles/Makefile2:91: CMakeFiles/example_position.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

I think the /home/charlie/Desktop/unitree_legged_latest_sdk/lib/cpp/amd64/libunitree_legged_sdk.a provided was not compiled with the right option https://stackoverflow.com/questions/19768267/relocation-r-x86-64-32s-against-linking-error

If it's my fault that it won't compile, can you let me know how to compile it such that it works? thank you

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions