discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: shared_ptr does not name a template type in Cross-compile of GR 3.7


From: dtrask1
Subject: Re: shared_ptr does not name a template type in Cross-compile of GR 3.7 with UHD 3.15 SDK
Date: Thu, 18 Feb 2021 16:26:20 +0000

Thank you, Marcus.

The odd thing is that I don't have thrift installed on my Ubuntu host and the UHD 3.15 cross-compile environment doesn't have a version of thrift, either. 

What I would actually like to happen is for the -DCTRLPORT_USE_STD_SHARED_PTR to be set to "0" so that the boost shared_ptr is used.

Tracing through gnuradio-runtime-lib/controlport/CMakeLists.txt, it looks like with no thrift installed, I should set -DCMAKE_CXX_STANDARD=98, to ensure that the C++98 standard is used and force the use of boost::shared_ptr instead of std::shared_ptr.

However, setting this flag on the cmake command line doesn't have any affect on the result.

The build I am using is maint-3.7 from git. I would like to try maint-3.8, but I am told that UHD 3.15 does not work with maint-3.8.

Do you know of anything else to try?

Dennis

-----------------------------------------

From: "Marcus Müller"
To: discuss-gnuradio@gnu.org
Cc:
Sent: Wednesday February 17 2021 4:25:35PM
Subject: Re: shared_ptr does not name a template type in Cross-compile of GR 3.7 with UHD 3.15 SDK

Hi!

So situation is this: The Thrift version you're using is new enough to require C++11.
Our CMake tooling detects that, and sets the C++ standard version accordingly [1].

Yours doesn't seem to do that yet; you'll need to fetch GNU Radio's maint-3.7 branch from
git if that's supposed to work automatically.
You can, for the meantime, use -DCMAKE_CXX_STANDARD=11 on your CMake command line to
enforce C++11.

(honestly, if you can avoid it: don't use GNU Radio 3.7 for new projects; GR 3.8 and later
do C++11 out of the box.)

Best regards,
Marcus


[1] gnuradio-runtim/lib/controlport/CMakeLists.txt
if(${THRIFT_VERSION} VERSION_GREATER_EQUAL 0.11.0)
if(CMAKE_CXX_STANDARD)
if(${CMAKE_CXX_STANDARD} VERSION_LESS 11)
message(WARNING "\nWarning: Thrift version is ${THRIFT_VERSION}, which requires
C++11 for building. The current c++ standard to use is C++${CMAKE_CXX_STANDARD}, which
will not work with this Thrift version. Trying to set CMake internally to use C++11 ...")
set(CMAKE_CXX_STANDARD 11)
endif()
else()
message(WARNING "\nWarning: Thrift version is ${THRIFT_VERSION}, which requires C++11
for building. The c++ standard to use is not currently set. Trying to set CMake internally
to use C++11 ...")
set(CMAKE_CXX_STANDARD 11)
endif()
endif()

On 17.02.21 20:55, dtrask1@tampabay.rr.com wrote:
> I have UHD 3.15 successfully cross-compiled for E310 on Ubuntu 18.04 host. Now trying to
> cross-compile GnuRadio 3.7. My cmake is:
>
> cmake -DCMAKE_TOOLCHAIN_FILE=~/rfnoc/src/gnuradio/cmake/Toolchains/oe-sdk_cross.cmake
> -DENABLE_DOXYGEN=OFF -DCMAKE_INSTALL_PREFIX=/usr
> -DCMAKE_ASM_COMPILER_ARG1:STRING="-mcpu=cortex-a9" ../
>
> It looks like the build is erroneously looking for shared_ptr in namespace std instead of
> namespace boost, but I'm not sure how to set this up for success. Does anyone see where I
> have gone wrong?
>
> I'm getting the following error stream:
>
> [ 34%] Building CXX object
> gnuradio-runtime/lib/CMakeFiles/gnuradio-runtime.dir/block_gateway_impl.cc.o
> In file included from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager_base.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/basic_block.h:42,
>                  from /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/lib/basic_block.cc:27:
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:32:
> error: 'shared_ptr' in namespace 'std' does not name a template type
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                                 ^~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager_base.h:34:13: note:
> in expansion of macro 'GR_RPC_SHARED_PTR'
>      typedef GR_RPC_SHARED_PTR<rpcserver_booter_base> rpcserver_booter_base_sptr;
>              ^~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:27:
> note: 'std::shared_ptr' is only available from C++11 onwards
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                            ^~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager_base.h:34:13: note:
> in expansion of macro 'GR_RPC_SHARED_PTR'
>      typedef GR_RPC_SHARED_PTR<rpcserver_booter_base> rpcserver_booter_base_sptr;
>              ^~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:32:
> error: 'shared_ptr' in namespace 'std' does not name a template type
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                                 ^~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_base.h:49:13:
> note: in expansion of macro 'GR_RPC_SHARED_PTR'
>      typedef GR_RPC_SHARED_PTR<rpcserver_base> rpcserver_base_sptr;
>              ^~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:27:
> note: 'std::shared_ptr' is only available from C++11 onwards
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                            ^~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_base.h:49:13:
> note: in expansion of macro 'GR_RPC_SHARED_PTR'
>      typedef GR_RPC_SHARED_PTR<rpcserver_base> rpcserver_base_sptr;
>              ^~~~~~~~~~~~~~~~~
> In file included from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_booter_aggregator.h:28,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager.h:28,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/basic_block.h:42,
>                  from /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/lib/basic_block.cc:27:
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:47:42:
> error: 'rpcmanager_base::rpcserver_booter_base_sptr' has not been declared
>      void registerServer(rpcmanager_base::rpcserver_booter_base_sptr server);
>                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:120:42:
> error: 'rpcserver_booter_base_sptr' is not a member of 'rpcmanager_base'
>      typedef std::vector<rpcmanager_base::rpcserver_booter_base_sptr> rpcServerMap_t;
>                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:120:42:
> error: 'rpcserver_booter_base_sptr' is not a member of 'rpcmanager_base'
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:120:68:
> error: template argument 1 is invalid
>      typedef std::vector<rpcmanager_base::rpcserver_booter_base_sptr> rpcServerMap_t;
>                                                                     ^
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:120:68:
> error: template argument 2 is invalid
> In file included from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager_base.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/basic_block.h:42,
>                  from /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/lib/basic_block.cc:27:
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:32:
> error: 'shared_ptr' in namespace 'std' does not name a template type
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                                 ^~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_booter_aggregator.h:52:5:
> note: in expansion of macro 'GR_RPC_SHARED_PTR'
>      GR_RPC_SHARED_PTR<rpcserver_aggregator> server;
>      ^~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:27:
> note: 'std::shared_ptr' is only available from C++11 onwards
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                            ^~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_booter_aggregator.h:52:5:
> note: in expansion of macro 'GR_RPC_SHARED_PTR'
>      GR_RPC_SHARED_PTR<rpcserver_aggregator> server;
>      ^~~~~~~~~~~~~~~~~
> In file included from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager_base.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/basic_block.h:42,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/block.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/block_gateway.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/lib/block_gateway_impl.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/lib/block_gateway_impl.cc:22:
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:32:
> error: 'shared_ptr' in namespace 'std' does not name a template type
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                                 ^~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager_base.h:34:13: note:
> in expansion of macro 'GR_RPC_SHARED_PTR'
>      typedef GR_RPC_SHARED_PTR<rpcserver_booter_base> rpcserver_booter_base_sptr;
>              ^~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:27:
> note: 'std::shared_ptr' is only available from C++11 onwards
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                            ^~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager_base.h:34:13: note:
> in expansion of macro 'GR_RPC_SHARED_PTR'
>      typedef GR_RPC_SHARED_PTR<rpcserver_booter_base> rpcserver_booter_base_sptr;
>              ^~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:32:
> error: 'shared_ptr' in namespace 'std' does not name a template type
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                                 ^~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_base.h:49:13:
> note: in expansion of macro 'GR_RPC_SHARED_PTR'
>      typedef GR_RPC_SHARED_PTR<rpcserver_base> rpcserver_base_sptr;
>              ^~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:27:
> note: 'std::shared_ptr' is only available from C++11 onwards
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                            ^~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_base.h:49:13:
> note: in expansion of macro 'GR_RPC_SHARED_PTR'
>      typedef GR_RPC_SHARED_PTR<rpcserver_base> rpcserver_base_sptr;
>              ^~~~~~~~~~~~~~~~~
> In file included from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_booter_aggregator.h:28,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager.h:28,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/basic_block.h:42,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/block.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/block_gateway.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/lib/block_gateway_impl.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/lib/block_gateway_impl.cc:22:
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:47:42:
> error: 'rpcmanager_base::rpcserver_booter_base_sptr' has not been declared
>      void registerServer(rpcmanager_base::rpcserver_booter_base_sptr server);
>                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:120:42:
> error: 'rpcserver_booter_base_sptr' is not a member of 'rpcmanager_base'
>      typedef std::vector<rpcmanager_base::rpcserver_booter_base_sptr> rpcServerMap_t;
>                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:120:42:
> error: 'rpcserver_booter_base_sptr' is not a member of 'rpcmanager_base'
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:120:68:
> error: template argument 1 is invalid
>      typedef std::vector<rpcmanager_base::rpcserver_booter_base_sptr> rpcServerMap_t;
>                                                                     ^
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:120:68:
> error: template argument 2 is invalid
> In file included from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager_base.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/basic_block.h:42,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/block.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/block_gateway.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/lib/block_gateway_impl.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/lib/block_gateway_impl.cc:22:
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:32:
> error: 'shared_ptr' in namespace 'std' does not name a template type
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                                 ^~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_booter_aggregator.h:52:5:
> note: in expansion of macro 'GR_RPC_SHARED_PTR'
>      GR_RPC_SHARED_PTR<rpcserver_aggregator> server;
>      ^~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:27:
> note: 'std::shared_ptr' is only available from C++11 onwards
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                            ^~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_booter_aggregator.h:52:5:
> note: in expansion of macro 'GR_RPC_SHARED_PTR'
>      GR_RPC_SHARED_PTR<rpcserver_aggregator> server;
>      ^~~~~~~~~~~~~~~~~
> In file included from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager_base.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/basic_block.h:42,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/block.h:27,
>                  from /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/lib/block.cc:27:
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:32:
> error: 'shared_ptr' in namespace 'std' does not name a template type
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                                 ^~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager_base.h:34:13: note:
> in expansion of macro 'GR_RPC_SHARED_PTR'
>      typedef GR_RPC_SHARED_PTR<rpcserver_booter_base> rpcserver_booter_base_sptr;
>              ^~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:27:
> note: 'std::shared_ptr' is only available from C++11 onwards
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                            ^~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager_base.h:34:13: note:
> in expansion of macro 'GR_RPC_SHARED_PTR'
>      typedef GR_RPC_SHARED_PTR<rpcserver_booter_base> rpcserver_booter_base_sptr;
>              ^~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:32:
> error: 'shared_ptr' in namespace 'std' does not name a template type
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                                 ^~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_base.h:49:13:
> note: in expansion of macro 'GR_RPC_SHARED_PTR'
>      typedef GR_RPC_SHARED_PTR<rpcserver_base> rpcserver_base_sptr;
>              ^~~~~~~~~~~~~~~~~
> In file included from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager_base.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/basic_block.h:42,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/block.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/lib/block_executor.cc:27:
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:32:
> error: 'shared_ptr' in namespace 'std' does not name a template type
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                                 ^~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager_base.h:34:13: note:
> in expansion of macro 'GR_RPC_SHARED_PTR'
>      typedef GR_RPC_SHARED_PTR<rpcserver_booter_base> rpcserver_booter_base_sptr;
>              ^~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:27:
> note: 'std::shared_ptr' is only available from C++11 onwards
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                            ^~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_base.h:49:13:
> note: in expansion of macro 'GR_RPC_SHARED_PTR'
>      typedef GR_RPC_SHARED_PTR<rpcserver_base> rpcserver_base_sptr;
>              ^~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:27:
> note: 'std::shared_ptr' is only available from C++11 onwards
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                            ^~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager_base.h:34:13: note:
> in expansion of macro 'GR_RPC_SHARED_PTR'
>      typedef GR_RPC_SHARED_PTR<rpcserver_booter_base> rpcserver_booter_base_sptr;
>              ^~~~~~~~~~~~~~~~~
> In file included from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_booter_aggregator.h:28,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager.h:28,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/basic_block.h:42,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/block.h:27,
>                  from /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/lib/block.cc:27:
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:47:42:
> error: 'rpcmanager_base::rpcserver_booter_base_sptr' has not been declared
>      void registerServer(rpcmanager_base::rpcserver_booter_base_sptr server);
>                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:120:42:
> error: 'rpcserver_booter_base_sptr' is not a member of 'rpcmanager_base'
>      typedef std::vector<rpcmanager_base::rpcserver_booter_base_sptr> rpcServerMap_t;
>                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:120:42:
> error: 'rpcserver_booter_base_sptr' is not a member of 'rpcmanager_base'
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:120:68:
> error: template argument 1 is invalid
>      typedef std::vector<rpcmanager_base::rpcserver_booter_base_sptr> rpcServerMap_t;
>                                                                     ^
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:120:68:
> error: template argument 2 is invalid
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:32:
> error: 'shared_ptr' in namespace 'std' does not name a template type
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                                 ^~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_base.h:49:13:
> note: in expansion of macro 'GR_RPC_SHARED_PTR'
>      typedef GR_RPC_SHARED_PTR<rpcserver_base> rpcserver_base_sptr;
>              ^~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:27:
> note: 'std::shared_ptr' is only available from C++11 onwards
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                            ^~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_base.h:49:13:
> note: in expansion of macro 'GR_RPC_SHARED_PTR'
>      typedef GR_RPC_SHARED_PTR<rpcserver_base> rpcserver_base_sptr;
>              ^~~~~~~~~~~~~~~~~
> In file included from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_booter_aggregator.h:28,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager.h:28,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/basic_block.h:42,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/block.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/lib/block_executor.cc:27:
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:47:42:
> error: 'rpcmanager_base::rpcserver_booter_base_sptr' has not been declared
>      void registerServer(rpcmanager_base::rpcserver_booter_base_sptr server);
>                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:120:42:
> error: 'rpcserver_booter_base_sptr' is not a member of 'rpcmanager_base'
>      typedef std::vector<rpcmanager_base::rpcserver_booter_base_sptr> rpcServerMap_t;
>                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:120:42:
> error: 'rpcserver_booter_base_sptr' is not a member of 'rpcmanager_base'
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:120:68:
> error: template argument 1 is invalid
>      typedef std::vector<rpcmanager_base::rpcserver_booter_base_sptr> rpcServerMap_t;
>                                                                     ^
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_aggregator.h:120:68:
> error: template argument 2 is invalid
> In file included from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager_base.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/basic_block.h:42,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/block.h:27,
>                  from /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/lib/block.cc:27:
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:32:
> error: 'shared_ptr' in namespace 'std' does not name a template type
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                                 ^~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_booter_aggregator.h:52:5:
> note: in expansion of macro 'GR_RPC_SHARED_PTR'
>      GR_RPC_SHARED_PTR<rpcserver_aggregator> server;
>      ^~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:27:
> note: 'std::shared_ptr' is only available from C++11 onwards
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                            ^~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_booter_aggregator.h:52:5:
> note: in expansion of macro 'GR_RPC_SHARED_PTR'
>      GR_RPC_SHARED_PTR<rpcserver_aggregator> server;
>      ^~~~~~~~~~~~~~~~~
> In file included from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager_base.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcmanager.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcregisterhelpers.h:26,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/basic_block.h:42,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/block.h:27,
>                  from
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/lib/block_executor.cc:27:
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:32:
> error: 'shared_ptr' in namespace 'std' does not name a template type
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                                 ^~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_booter_aggregator.h:52:5:
> note: in expansion of macro 'GR_RPC_SHARED_PTR'
>      GR_RPC_SHARED_PTR<rpcserver_aggregator> server;
>      ^~~~~~~~~~~~~~~~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpc_shared_ptr_selection.h:34:27:
> note: 'std::shared_ptr' is only available from C++11 onwards
>  #define GR_RPC_SHARED_PTR std::shared_ptr
>                            ^~~
> /home/labuser/rfnoc/src/gnuradio/gnuradio-runtime/include/gnuradio/rpcserver_booter_aggregator.h:52:5:
> note: in expansion of macro 'GR_RPC_SHARED_PTR'
>      GR_RPC_SHARED_PTR<rpcserver_aggregator> server;
>      ^~~~~~~~~~~~~~~~~
> gnuradio-runtime/lib/CMakeFiles/gnuradio-runtime.dir/build.make:218: recipe for target
> 'gnuradio-runtime/lib/CMakeFiles/gnuradio-runtime.dir/basic_block.cc.o' failed
> make[2]: *** [gnuradio-runtime/lib/CMakeFiles/gnuradio-runtime.dir/basic_block.cc.o] Error 1
>
>
>
>
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]