openscenegraph / OpenSceneGraph

OpenSceneGraph git repository
http://www.openscenegraph.org
Other
3.25k stars 1.42k forks source link

Build fails on ubuntu 22.04.3 with v3.6.5 #1255

Closed nattydread69 closed 1 year ago

nattydread69 commented 1 year ago

make[2]: *** No rule to make target '/usr/lib/x86_64-linux-gnu/librt.so', needed by 'lib/libosg.so.3.6.5'. Stop.

I noticed this issue was also affecting the build of assimp which they have now fixed.

Natty

robertosfield commented 1 year ago

To check current status I checked out the 3.6.5 tag and did a clean build on my Kubuntu 22.04 system and while there are many warnings due to new compilers every builds.

nattydread69 commented 1 year ago

I wonder why its not building on this machine then?

nattydread69 commented 1 year ago

I cloned the repo to a new empty folder and it built OK. Weird that even a make clean didn't remove the error. I'll close this issue.

robertosfield commented 1 year ago

make clean doesn't remove the CMakeCache.txt file so I presume there was a reference to problem system lib that had been changed by an OS update. Running make clobber or removing CMakeCache.txt would force CMake to refined all the dependencies.

nattydread69 commented 1 year ago

Thanks Robert.

TZECHIN6 commented 1 year ago

Error during build in ubuntu 22, error can not be found under class asio:

[ 86%] Building CXX object src/osgPlugins/RestHttpDevice/CMakeFiles/osgdb_resthttp.dir/connection.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/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.hpp:17,
                 from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:11:
/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(
      | ^~~~~~~~~~~~~~~~~~~~
/home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp: In member function ‘void http::server::connection::start()’:
/home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:43:29: error: ‘error’ is not a member of ‘asio::placeholders’; did you mean ‘asio::error’?
   43 |         asio::placeholders::error,
      |                             ^~~~~
In file included from /usr/include/asio/detail/impl/posix_event.ipp:24,
                 from /usr/include/asio/detail/posix_event.hpp:170,
                 from /usr/include/asio/detail/event.hpp:25,
                 from /usr/include/asio/execution/blocking_adaptation.hpp:19,
                 from /usr/include/asio/execution.hpp:22,
                 from /usr/include/asio/system_executor.hpp:20,
                 from /usr/include/asio/associated_executor.hpp:22,
                 from /usr/include/asio.hpp:19,
                 from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.hpp:14,
                 from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:11:
/usr/include/asio/error.hpp:64:11: note: ‘asio::error’ declared here
   64 | namespace error {
      |           ^~~~~
/home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:44:29: error: ‘bytes_transferred’ is not a member of ‘asio::placeholders’
   44 |         asio::placeholders::bytes_transferred));
      |                             ^~~~~~~~~~~~~~~~~
/home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp: In member function ‘void http::server::connection::handle_read(const error_code&, std::size_t)’:
/home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:61:33: error: ‘error’ is not a member of ‘asio::placeholders’; did you mean ‘asio::error’?
   61 |             asio::placeholders::error));
      |                                 ^~~~~
In file included from /usr/include/asio/detail/impl/posix_event.ipp:24,
                 from /usr/include/asio/detail/posix_event.hpp:170,
                 from /usr/include/asio/detail/event.hpp:25,
                 from /usr/include/asio/execution/blocking_adaptation.hpp:19,
                 from /usr/include/asio/execution.hpp:22,
                 from /usr/include/asio/system_executor.hpp:20,
                 from /usr/include/asio/associated_executor.hpp:22,
                 from /usr/include/asio.hpp:19,
                 from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.hpp:14,
                 from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:11:
/usr/include/asio/error.hpp:64:11: note: ‘asio::error’ declared here
   64 | namespace error {
      |           ^~~~~
/home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:68:33: error: ‘error’ is not a member of ‘asio::placeholders’; did you mean ‘asio::error’?
   68 |             asio::placeholders::error));
      |                                 ^~~~~
In file included from /usr/include/asio/detail/impl/posix_event.ipp:24,
                 from /usr/include/asio/detail/posix_event.hpp:170,
                 from /usr/include/asio/detail/event.hpp:25,
                 from /usr/include/asio/execution/blocking_adaptation.hpp:19,
                 from /usr/include/asio/execution.hpp:22,
                 from /usr/include/asio/system_executor.hpp:20,
                 from /usr/include/asio/associated_executor.hpp:22,
                 from /usr/include/asio.hpp:19,
                 from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.hpp:14,
                 from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:11:
/usr/include/asio/error.hpp:64:11: note: ‘asio::error’ declared here
   64 | namespace error {
      |           ^~~~~
/home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:74:33: error: ‘error’ is not a member of ‘asio::placeholders’; did you mean ‘asio::error’?
   74 |             asio::placeholders::error,
      |                                 ^~~~~
In file included from /usr/include/asio/detail/impl/posix_event.ipp:24,
                 from /usr/include/asio/detail/posix_event.hpp:170,
                 from /usr/include/asio/detail/event.hpp:25,
                 from /usr/include/asio/execution/blocking_adaptation.hpp:19,
                 from /usr/include/asio/execution.hpp:22,
                 from /usr/include/asio/system_executor.hpp:20,
                 from /usr/include/asio/associated_executor.hpp:22,
                 from /usr/include/asio.hpp:19,
                 from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.hpp:14,
                 from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:11:
/usr/include/asio/error.hpp:64:11: note: ‘asio::error’ declared here
   64 | namespace error {
      |           ^~~~~
/home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:75:33: error: ‘bytes_transferred’ is not a member of ‘asio::placeholders’
   75 |             asio::placeholders::bytes_transferred));
      |                                 ^~~~~~~~~~~~~~~~~
make[2]: *** [src/osgPlugins/RestHttpDevice/CMakeFiles/osgdb_resthttp.dir/build.make:76: src/osgPlugins/RestHttpDevice/CMakeFiles/osgdb_resthttp.dir/connection.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:5188: src/osgPlugins/RestHttpDevice/CMakeFiles/osgdb_resthttp.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

So... whats the step to fix it? or right now is not able to build under ubuntu 22? thanks

robertosfield commented 1 year ago

Please try the 3.6 branch.

On Mon, 18 Sept 2023 at 03:43, Thomas LUK @.***> wrote:

Error during build in ubuntu 22:

[ 86%] Building CXX object src/osgPlugins/RestHttpDevice/CMakeFiles/osgdb_resthttp.dir/connection.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/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.hpp:17, from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:11: /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( | ^~~~~~~~ /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp: In member function ‘void http::server::connection::start()’: /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:43:29: error: ‘error’ is not a member of ‘asio::placeholders’; did you mean ‘asio::error’? 43 | asio::placeholders::error, | ^~~~~ In file included from /usr/include/asio/detail/impl/posix_event.ipp:24, from /usr/include/asio/detail/posix_event.hpp:170, from /usr/include/asio/detail/event.hpp:25, from /usr/include/asio/execution/blocking_adaptation.hpp:19, from /usr/include/asio/execution.hpp:22, from /usr/include/asio/system_executor.hpp:20, from /usr/include/asio/associated_executor.hpp:22, from /usr/include/asio.hpp:19, from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.hpp:14, from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:11: /usr/include/asio/error.hpp:64:11: note: ‘asio::error’ declared here 64 | namespace error { | ^~~~~ /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:44:29: error: ‘bytes_transferred’ is not a member of ‘asio::placeholders’ 44 | asio::placeholders::bytes_transferred)); | ^~~~~ /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp: In member function ‘void http::server::connection::handle_read(const error_code&, std::size_t)’: /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:61:33: error: ‘error’ is not a member of ‘asio::placeholders’; did you mean ‘asio::error’? 61 | asio::placeholders::error)); | ^~~~~ In file included from /usr/include/asio/detail/impl/posix_event.ipp:24, from /usr/include/asio/detail/posix_event.hpp:170, from /usr/include/asio/detail/event.hpp:25, from /usr/include/asio/execution/blocking_adaptation.hpp:19, from /usr/include/asio/execution.hpp:22, from /usr/include/asio/system_executor.hpp:20, from /usr/include/asio/associated_executor.hpp:22, from /usr/include/asio.hpp:19, from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.hpp:14, from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:11: /usr/include/asio/error.hpp:64:11: note: ‘asio::error’ declared here 64 | namespace error { | ^~~~~ /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:68:33: error: ‘error’ is not a member of ‘asio::placeholders’; did you mean ‘asio::error’? 68 | asio::placeholders::error)); | ^~~~~ In file included from /usr/include/asio/detail/impl/posix_event.ipp:24, from /usr/include/asio/detail/posix_event.hpp:170, from /usr/include/asio/detail/event.hpp:25, from /usr/include/asio/execution/blocking_adaptation.hpp:19, from /usr/include/asio/execution.hpp:22, from /usr/include/asio/system_executor.hpp:20, from /usr/include/asio/associated_executor.hpp:22, from /usr/include/asio.hpp:19, from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.hpp:14, from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:11: /usr/include/asio/error.hpp:64:11: note: ‘asio::error’ declared here 64 | namespace error { | ^~~~~ /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:74:33: error: ‘error’ is not a member of ‘asio::placeholders’; did you mean ‘asio::error’? 74 | asio::placeholders::error, | ^~~~~ In file included from /usr/include/asio/detail/impl/posix_event.ipp:24, from /usr/include/asio/detail/posix_event.hpp:170, from /usr/include/asio/detail/event.hpp:25, from /usr/include/asio/execution/blocking_adaptation.hpp:19, from /usr/include/asio/execution.hpp:22, from /usr/include/asio/system_executor.hpp:20, from /usr/include/asio/associated_executor.hpp:22, from /usr/include/asio.hpp:19, from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.hpp:14, from /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:11: /usr/include/asio/error.hpp:64:11: note: ‘asio::error’ declared here 64 | namespace error { | ^~~~~ /home/thomas/Code/OpenSceneGraph/src/osgPlugins/RestHttpDevice/connection.cpp:75:33: error: ‘bytes_transferred’ is not a member of ‘asio::placeholders’ 75 | asio::placeholders::bytes_transferred)); | ^~~~~ make[2]: [src/osgPlugins/RestHttpDevice/CMakeFiles/osgdb_resthttp.dir/build.make:76: src/osgPlugins/RestHttpDevice/CMakeFiles/osgdb_resthttp.dir/connection.cpp.o] Error 1 make[1]: [CMakeFiles/Makefile2:5188: src/osgPlugins/RestHttpDevice/CMakeFiles/osgdb_resthttp.dir/all] Error 2 make: *** [Makefile:136: all] Error 2

So... whats the step to fix it? or right now is not able to build under ubuntu 22? thanks

— Reply to this email directly, view it on GitHub https://github.com/openscenegraph/OpenSceneGraph/issues/1255#issuecomment-1722682613, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAKEGUAZYOLLLEWYGIHKSPLX26YNZANCNFSM6AAAAAA4OYGP4Q . You are receiving this because you commented.Message ID: @.***>