PandABlocks / ADPandABlocks

EPICS areaDetector driver for streaming data from PandABlocks-server
0 stars 1 forks source link

ADPandABlocks undefined reference to symbol #1

Open kimanha opened 4 years ago

kimanha commented 4 years ago

Hi,

Here is NSLS-II controls I am trying to compile ADPandABlocks epics IOC driver. If found undefined reference to symbol error from my environment.

base-3.15.6 synApps_6_0

bpmlab2 ~/xilinx/kiman/PandA/ADPandABlocks $ make make -C ./configure install make[1]: Entering directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/configure' perl -CSD /home/bpmlab2/xilinx/epics/base-3.15.6/bin/linux-x86_64/makeMakefile.pl O.linux-x86_64 ../.. mkdir O.Common make -C O.linux-x86_64 -f ../Makefile TOP=../.. \ T_A=linux-x86_64 install

: ib/linux-x86_64 -Wl,-rpath,/usr/local/lib -rdynamic -m64 tests.o test_ADPandABlocks.o testingutilities.o -lboost_unit_test_framework -lNDPlugin -lasyn -lADPandABlocks /usr/bin/ld: test_ADPandABlocks.o: undefined reference to symbol 'epicsStdoutPrintf' //home/bpmlab2/xilinx/epics/base-3.15.6/lib/linux-x86_64/libCom.so.3.15.6: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES_BUILD:203: recipe for target 'tests' failed make[3]: [tests] Error 1 make[3]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64' /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES_ARCHS:58: recipe for target 'install.linux-x86_64' failed make[2]: [install.linux-x86_64] Error 2 make[2]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests' /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES_DIRS:84: recipe for target 'tests.install' failed make[1]: [tests.install] Error 2 make[1]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp' /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES_DIRS:84: recipe for target 'ADPandABlocksApp.install' failed make: [ADPandABlocksApp.install] Error 2 bpmlab2 ~/xilinx/kiman/PandA/ADPandABlocks $

thomascobb commented 4 years ago

@LeeHudsonDLS will this be fixed when you push master to GitHub? I've given you access to the repo now.

LeeHudsonDLS commented 4 years ago

Yes it should be but I don't seem to be able to push still

kimanha commented 4 years ago

I tried cloned again and the same issue. Thanks,

LeeHudsonDLS commented 4 years ago

Apologies, the fix I pushed was related to asynPrint calls. epicsStdoutPrintf is from EPICS base. I'll find time early next week to look at this.

LeeHudsonDLS commented 4 years ago

I have just pushed the fix, please try this and let me know if it fixes it. For some reason I had to add the epics base libs manually for the tests/ area, I don't know why this is needed for your version of EPICS.

kimanha commented 4 years ago

Please see my error, something looks boost module issue?

make -C O.linux-x86_64 -f ../Makefile TOP=../../.. \ T_A=linux-x86_64 install make[3]: Entering directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64' /usr/bin/g++ -o tests -L/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/lib/linux-x86_64 -L/home/bpmlab2/xilinx/epics/base-3.15.6/lib/linux-x86_64 -L/home/bpmlab2/xilinx/epics/modules/synApps_6_0/support/areaDetector-R3-3-1/ADCore/lib/linux-x86_64 -L/home/bpmlab2/xilinx/epics/modules/synApps_6_0/support/asyn-R4-33/lib/linux-x86_64 -Wl,-rpath,/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/lib/linux-x86_64 -Wl,-rpath,/home/bpmlab2/xilinx/epics/base-3.15.6/lib/linux-x86_64 -Wl,-rpath,/home/bpmlab2/xilinx/epics/modules/synApps_6_0/support/areaDetector-R3-3-1/ADCore/lib/linux-x86_64 -Wl,-rpath,/home/bpmlab2/xilinx/epics/modules/synApps_6_0/support/asyn-R4-33/lib/linux-x86_64 -rdynamic -m64 tests.o test_ADPandABlocks.o testingutilities.o -ldbRecStd -ldbCore -lca -lCom -lADBase -lasyn -lADPandABlocks -lboost_unit_test_framework tests.o: In function __static_initialization_and_destruction_0': /usr/local/include/boost/test/unit_test_log.hpp:228: undefined reference toboost::unit_test::unit_test_log_t::instance()' tests.o: In function __static_initialization_and_destruction_0': /usr/local/include/boost/test/unit_test_suite.hpp:382: undefined reference toboost::unit_test::framework::impl::master_test_suite_name_setter::master_test_suite_name_setter(boost::unit_test::basic_cstring)' test_ADPandABlocks.o: In function boost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t<double> >, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t<double> > const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t<double> > const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In function boost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t<double>, boost::test_tools::tt_detail::print_helper_t<double> const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t<double> const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionbool boost::test_tools::tt_detail::check_frwd<boost::test_tools::check_is_close_t, double, double, boost::math::fpc::percent_tolerance_t >(boost::test_tools::check_is_close_t, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, double const&, char const, double const&, char const, boost::math::fpc::percent_tolerance_t const&, char const)': /usr/local/include/boost/test/tools/old/impl.hpp:92: undefined reference to boost::test_tools::tt_detail::report_assertion(boost::test_tools::assertion_result const&, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring<char const>, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long, ...)' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, char [1], char const (&) [1]>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, char const (&) [1])': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t >, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t > const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t > const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t, boost::test_tools::tt_detail::print_helper_t const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In function `bool boost::test_tools::tt_detail::check_frwd<boost::test_tools::check_is_close_t, double, double, boost::math::fpc::percent_tolerance_t >(boost::test_tools::check_is_close_t, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, double const&, char const, double const&, char const, boost::math::fpc::percent_tolerance_t const&, char const)': /usr/local/include/boost/test/tools/old/impl.hpp:92: undefined reference to boost::test_tools::tt_detail::report_assertion(boost::test_tools::assertion_result const&, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring<char const>, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long, ...)' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, char [1], char const (&) [1]>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, char const (&) [1])': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In function boost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t<unsigned long>, boost::test_tools::tt_detail::print_helper_t<unsigned long> const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t<unsigned long> const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionbool boost::test_tools::tt_detail::check_frwd<boost::test_tools::tt_detail::equal_impl_frwd, unsigned long, unsigned long>(boost::test_tools::tt_detail::equal_impl_frwd, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long const&, char const, unsigned long const&, char const)': /usr/local/include/boost/test/tools/old/impl.hpp:92: undefined reference to boost::test_tools::tt_detail::report_assertion(boost::test_tools::assertion_result const&, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring<char const>, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long, ...)' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, char [1], char const (&) [1]>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, char const (&) [1])': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t >, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t > const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t > const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t, boost::test_tools::tt_detail::print_helper_t const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In function bool boost::test_tools::tt_detail::check_frwd<boost::test_tools::check_is_close_t, double, double, boost::math::fpc::percent_tolerance_t<double> >(boost::test_tools::check_is_close_t, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring<char const>, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, double const&, char const*, double const&, char const*, boost::math::fpc::percent_tolerance_t<double> const&, char const*)': /usr/local/include/boost/test/tools/old/impl.hpp:92: undefined reference toboost::test_tools::tt_detail::report_assertion(boost::test_tools::assertion_result const&, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long, ...)' test_ADPandABlocks.o: In function boost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, char [1], char const (&) [1]>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, char const (&) [1])': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In function boost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t<double> >, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t<double> > const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t<double> > const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In function boost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t<double>, boost::test_tools::tt_detail::print_helper_t<double> const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t<double> const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionbool boost::test_tools::tt_detail::check_frwd<boost::test_tools::check_is_close_t, double, double, boost::math::fpc::percent_tolerance_t >(boost::test_tools::check_is_close_t, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, double const&, char const, double const&, char const, boost::math::fpc::percent_tolerance_t const&, char const)': /usr/local/include/boost/test/tools/old/impl.hpp:92: undefined reference to boost::test_tools::tt_detail::report_assertion(boost::test_tools::assertion_result const&, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring<char const>, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long, ...)' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, char [1], char const (&) [1]>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, char const (&) [1])': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t, boost::test_tools::tt_detail::print_helper_t const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In function `bool boost::test_tools::tt_detail::check_frwd<boost::test_tools::tt_detail::equal_impl_frwd, unsigned long, unsigned long>(boost::test_tools::tt_detail::equal_impl_frwd, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long const&, char const, unsigned long const&, char const)': /usr/local/include/boost/test/tools/old/impl.hpp:92: undefined reference to boost::test_tools::tt_detail::report_assertion(boost::test_tools::assertion_result const&, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring<char const>, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long, ...)' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, char [1], char const (&) [1]>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, char const (&) [1])': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t >, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t > const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t > const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t, boost::test_tools::tt_detail::print_helper_t const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In function `bool boost::test_tools::tt_detail::check_frwd<boost::test_tools::check_is_close_t, double, double, boost::math::fpc::percent_tolerance_t >(boost::test_tools::check_is_close_t, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, double const&, char const, double const&, char const, boost::math::fpc::percent_tolerance_t const&, char const)': /usr/local/include/boost/test/tools/old/impl.hpp:92: undefined reference to boost::test_tools::tt_detail::report_assertion(boost::test_tools::assertion_result const&, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring<char const>, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long, ...)' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, char [1], char const (&) [1]>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, char const (&) [1])': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t >, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t > const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t > const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t, boost::test_tools::tt_detail::print_helper_t const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In function bool boost::test_tools::tt_detail::check_frwd<boost::test_tools::check_is_close_t, double, double, boost::math::fpc::percent_tolerance_t<double> >(boost::test_tools::check_is_close_t, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring<char const>, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, double const&, char const*, double const&, char const*, boost::math::fpc::percent_tolerance_t<double> const&, char const*)': /usr/local/include/boost/test/tools/old/impl.hpp:92: undefined reference toboost::test_tools::tt_detail::report_assertion(boost::test_tools::assertion_result const&, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long, ...)' test_ADPandABlocks.o: In function boost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, char [1], char const (&) [1]>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, char const (&) [1])': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In function boost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t<unsigned long>, boost::test_tools::tt_detail::print_helper_t<unsigned long> const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t<unsigned long> const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionbool boost::test_tools::tt_detail::check_frwd<boost::test_tools::tt_detail::equal_impl_frwd, unsigned long, unsigned long>(boost::test_tools::tt_detail::equal_impl_frwd, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long const&, char const, unsigned long const&, char const)': /usr/local/include/boost/test/tools/old/impl.hpp:92: undefined reference to boost::test_tools::tt_detail::report_assertion(boost::test_tools::assertion_result const&, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring<char const>, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long, ...)' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, char [1], char const (&) [1]>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, char const (&) [1])': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t >, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t > const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t > const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t, boost::test_tools::tt_detail::print_helper_t const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In function bool boost::test_tools::tt_detail::check_frwd<boost::test_tools::check_is_close_t, double, double, boost::math::fpc::percent_tolerance_t<double> >(boost::test_tools::check_is_close_t, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring<char const>, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, double const&, char const*, double const&, char const*, boost::math::fpc::percent_tolerance_t<double> const&, char const*)': /usr/local/include/boost/test/tools/old/impl.hpp:92: undefined reference toboost::test_tools::tt_detail::report_assertion(boost::test_tools::assertion_result const&, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long, ...)' test_ADPandABlocks.o: In function boost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, char [1], char const (&) [1]>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, char const (&) [1])': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In function boost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t<double> >, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t<double> > const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t<boost::math::fpc::percent_tolerance_t<double> > const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In function boost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t<double>, boost::test_tools::tt_detail::print_helper_t<double> const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t<double> const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionbool boost::test_tools::tt_detail::check_frwd<boost::test_tools::check_is_close_t, double, double, boost::math::fpc::percent_tolerance_t >(boost::test_tools::check_is_close_t, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, double const&, char const, double const&, char const, boost::math::fpc::percent_tolerance_t const&, char const)': /usr/local/include/boost/test/tools/old/impl.hpp:92: undefined reference to boost::test_tools::tt_detail::report_assertion(boost::test_tools::assertion_result const&, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring<char const>, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long, ...)' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, char [1], char const (&) [1]>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, char const (&) [1])': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t, boost::test_tools::tt_detail::print_helper_t const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In function `bool boost::test_tools::tt_detail::check_frwd<boost::test_tools::tt_detail::equal_impl_frwd, unsigned long, unsigned long>(boost::test_tools::tt_detail::equal_impl_frwd, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long const&, char const, unsigned long const&, char const)': /usr/local/include/boost/test/tools/old/impl.hpp:92: undefined reference to boost::test_tools::tt_detail::report_assertion(boost::test_tools::assertion_result const&, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring<char const>, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long, ...)' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, char [1], char const (&) [1]>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, char const (&) [1])': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In functionboost::unit_test::lazy_ostream_impl<boost::unit_test::lazy_ostream, boost::test_tools::tt_detail::print_helper_t, boost::test_tools::tt_detail::print_helper_t const&>::lazy_ostream_impl(boost::unit_test::lazy_ostream const&, boost::test_tools::tt_detail::print_helper_t const&)': /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference to boost::unit_test::lazy_ostream::inst' /usr/local/include/boost/test/utils/lazy_ostream.hpp:61: undefined reference toboost::unit_test::lazy_ostream::inst' test_ADPandABlocks.o: In function `bool boost::test_tools::tt_detail::check_frwd<boost::test_tools::tt_detail::equal_impl_frwd, unsigned long, unsigned long>(boost::test_tools::tt_detail::equal_impl_frwd, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long const&, char const, unsigned long const&, char const)': /usr/local/include/boost/test/tools/old/impl.hpp:92: undefined reference to boost::test_tools::tt_detail::report_assertion(boost::test_tools::assertion_result const&, boost::unit_test::lazy_ostream const&, boost::unit_test::basic_cstring<char const>, unsigned long, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned long, ...)' test_ADPandABlocks.o: In functionboost::unit_test::ut_detail::global_configuration_impl::~global_configuration_impl()': /usr/local/include/boost/test/tree/global_fixture.hpp:84: undefined reference to boost::unit_test::global_configuration::~global_configuration()' test_ADPandABlocks.o: In functionboost::unit_test::ut_detail::global_configuration_impl::~global_configuration_impl()': /usr/local/include/boost/test/tree/global_fixture.hpp:84: undefined reference to boost::unit_test::global_configuration::~global_configuration()' test_ADPandABlocks.o: In functionboost::unit_test::make_test_case(boost::function<void ()> const&, boost::unit_test::basic_cstring, boost::unit_test::basic_cstring, unsigned long)': /usr/local/include/boost/test/tree/test_unit.hpp:267: undefined reference to boost::unit_test::test_case::test_case(boost::unit_test::basic_cstring<char const>, boost::unit_test::basic_cstring<char const>, unsigned long, boost::function<void ()> const&)' test_ADPandABlocks.o: In functionstatic_initialization_and_destruction_0(int, int) [clone .constprop.168]': /usr/local/include/boost/test/unit_test_log.hpp:228: undefined reference to boost::unit_test::unit_test_log_t::instance()' test_ADPandABlocks.o: In functionboost::unit_test::ut_detail::global_configuration_impl::global_configuration_impl()': /usr/local/include/boost/test/tree/global_fixture.hpp:86: undefined reference to boost::unit_test::global_configuration::global_configuration()' test_ADPandABlocks.o: In functionstatic_initialization_and_destruction_0(int, int) [clone .constprop.168]': /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:193: undefined reference to boost::unit_test::decorator::collector_t::instance()' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:193: undefined reference toboost::unit_test::ut_detail::auto_test_unit_registrar::auto_test_unit_registrar(boost::unit_test::basic_cstring, boost::unit_test::basic_cstring, unsigned long, boost::unit_test::decorator::collector_t&)' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:195: undefined reference to boost::unit_test::decorator::collector_t::instance()' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:195: undefined reference toboost::unit_test::ut_detail::auto_test_unit_registrar::auto_test_unit_registrar(boost::unit_test::basic_cstring, boost::unit_test::basic_cstring, unsigned long, boost::unit_test::decorator::collector_t&)' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:197: undefined reference to boost::unit_test::decorator::collector_t::instance()' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:197: undefined reference toboost::unit_test::ut_detail::auto_test_unit_registrar::auto_test_unit_registrar(boost::unit_test::test_case, boost::unit_test::decorator::collector_t&, unsigned long)' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:236: undefined reference to boost::unit_test::decorator::collector_t::instance()' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:236: undefined reference toboost::unit_test::ut_detail::auto_test_unit_registrar::auto_test_unit_registrar(boost::unit_test::test_case, boost::unit_test::decorator::collector_t&, unsigned long)' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:274: undefined reference to boost::unit_test::decorator::collector_t::instance()' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:274: undefined reference toboost::unit_test::ut_detail::auto_test_unit_registrar::auto_test_unit_registrar(boost::unit_test::test_case, boost::unit_test::decorator::collector_t&, unsigned long)' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:312: undefined reference to boost::unit_test::decorator::collector_t::instance()' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:312: undefined reference toboost::unit_test::ut_detail::auto_test_unit_registrar::auto_test_unit_registrar(boost::unit_test::test_case, boost::unit_test::decorator::collector_t&, unsigned long)' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:351: undefined reference to boost::unit_test::decorator::collector_t::instance()' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:351: undefined reference toboost::unit_test::ut_detail::auto_test_unit_registrar::auto_test_unit_registrar(boost::unit_test::test_case, boost::unit_test::decorator::collector_t&, unsigned long)' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:408: undefined reference to boost::unit_test::decorator::collector_t::instance()' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:408: undefined reference toboost::unit_test::ut_detail::auto_test_unit_registrar::auto_test_unit_registrar(boost::unit_test::test_case, boost::unit_test::decorator::collector_t&, unsigned long)' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:416: undefined reference to boost::unit_test::decorator::collector_t::instance()' /home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64/../test_ADPandABlocks.cpp:416: undefined reference toboost::unit_test::ut_detail::auto_test_unit_registrar::auto_test_unit_registrar(boost::unit_test::test_case, boost::unit_test::decorator::collector_t&, unsigned long)' test_ADPandABlocks.o:(.rodata._ZTIN5boost9unit_test9ut_detail25global_configuration_implI26ADPandABlocksGlobalFixtureEE[_ZTIN5boost9unit_test9ut_detail25global_configuration_implI26ADPandABlocksGlobalFixtureEE]+0x10): undefined reference to `typeinfo for boost::unit_test::global_configuration' collect2: error: ld returned 1 exit status /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES_BUILD:203: recipe for target 'tests' failed make[3]: [tests] Error 1 make[3]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64' /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES_ARCHS:58: recipe for target 'install.linux-x86_64' failed make[2]: [install.linux-x86_64] Error 2 make[2]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp/tests' /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES_DIRS:84: recipe for target 'tests.install' failed make[1]: [tests.install] Error 2 make[1]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/ADPandABlocksApp' /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES_DIRS:84: recipe for target 'ADPandABlocksApp.install' failed make: [ADPandABlocksApp.install] Error 2

LeeHudsonDLS commented 4 years ago

I don't get these errors when I make the module here using your version of EPICS base. It looks like the compiler command that's failing is failing because it's referencing some object files that haven't yet been compiled. /usr/bin/g++ -o tests -L/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/lib/linux-x86_64 -L/home/bpmlab2/xilinx/epics/base-3.15.6/lib/linux-x86_64 -L/home/bpmlab2/xilinx/epics/modules/synApps_6_0/support/areaDetector-R3-3-1/ADCore/lib/linux-x86_64 -L/home/bpmlab2/xilinx/epics/modules/synApps_6_0/support/asyn-R4-33/lib/linux-x86_64 -Wl,-rpath,/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/lib/linux-x86_64 -Wl,-rpath,/home/bpmlab2/xilinx/epics/base-3.15.6/lib/linux-x86_64 -Wl,-rpath,/home/bpmlab2/xilinx/epics/modules/synApps_6_0/support/areaDetector-R3-3-1/ADCore/lib/linux-x86_64 -Wl,-rpath,/home/bpmlab2/xilinx/epics/modules/synApps_6_0/support/asyn-R4-33/lib/linux-x86_64 -rdynamic -m64 tests.o test_ADPandABlocks.o testingutilities.o -ldbRecStd -ldbCore -lca -lCom -lADBase -lasyn -lADPandABlocks -lboost_unit_test_framework

The objects should have been created as soon as make enters the ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64 directory but it doesn't look like they are. If you see what my make is doing it's creating these objects first:

make[3]: Entering directory `/home/jjc62351/work/ADPandABlocks/ADPandABlocksApp/tests/O.linux-x86_64' /usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X8664 -DUNIX -Dlinux -O3 -g -Wall -O0 -g -Wall -Wextra -Wno-unused-parameter -mtune=generic -m64 -std=c++0x -pthread -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include -I/scratch/pandaDep/asyn/include -I/scratch/pandaDep/ADCore/include -I/scratch/pandaDep/motor/include -I/scratch/base-3.15.6/include/compiler/gcc -I/scratch/base-3.15.6/include/os/Linux -I/scratch/base-3.15.6/include -I/usr/include/libxml2 -c ../tests.cpp

/usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X8664 -DUNIX -Dlinux -O3 -g -Wall -O0 -g -Wall -Wextra -Wno-unused-parameter -mtune=generic -m64 -std=c++0x -pthread -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include -I/scratch/pandaDep/asyn/include -I/scratch/pandaDep/ADCore/include -I/scratch/pandaDep/motor/include -I/scratch/base-3.15.6/include/compiler/gcc -I/scratch/base-3.15.6/include/os/Linux -I/scratch/base-3.15.6/include -I/usr/include/libxml2 -c ../test_ADPandABlocks.cpp

/usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X8664 -DUNIX -Dlinux -O3 -g -Wall -O0 -g -Wall -Wextra -Wno-unused-parameter -mtune=generic -m64 -std=c++0x -pthread -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include -I/scratch/pandaDep/asyn/include -I/scratch/pandaDep/ADCore/include -I/scratch/pandaDep/motor/include -I/scratch/base-3.15.6/include/compiler/gcc -I/scratch/base-3.15.6/include/os/Linux -I/scratch/base-3.15.6/include -I/usr/include/libxml2 -c ../testingutilities.cpp

/usr/bin/g++ -o tests -L/home/jjc62351/work/ADPandABlocks/lib/linux-x86_64 -L/scratch/base-3.15.6/lib/linux-x86_64 -L/scratch/pandaDep/ADCore/lib/linux-x86_64 -L/scratch/pandaDep/asyn/lib/linux-x86_64 -Wl,-rpath,/home/jjc62351/work/ADPandABlocks/lib/linux-x86_64 -Wl,-rpath,/scratch/base-3.15.6/lib/linux-x86_64 -Wl,-rpath,/scratch/pandaDep/ADCore/lib/linux-x86_64 -Wl,-rpath,/scratch/pandaDep/asyn/lib/linux-x86_64 -rdynamic -m64 tests.o test_ADPandABlocks.o testingutilities.o -ldbRecStd -ldbCore -lca -lCom -lADBase -lasyn -lADPandABlocks -lboost_unit_test_framework

I'm not sure why yours is behaving differently as you should have the same Makefile as me.

kimanha commented 4 years ago

I disabled BOOT option and tried again.

ADPandABlocks/ADPandABlocksApp/Makefile

ifdef BOOST

DIRS := $(DIRS) $(filter-out $(DIRS), $(wildcard tests))

tests_DEPEND_DIRS += src

endif

dls-xml-iocbuilder.py -e -o ../O.Common/tmp ../example.xml make[3]: dls-xml-iocbuilder.py: Command not found ../Makefile:22: recipe for target '../../makeIocs/O.Common/example' failed make[3]: [../../makeIocs/O.Common/example] Error 127 make[3]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/etc/makeIocs/O.linux-x86_64' /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES_ARCHS:58: recipe for target 'install.linux-x86_64' failed make[2]: [install.linux-x86_64] Error 2 make[2]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/etc/makeIocs' /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES_DIRS:84: recipe for target 'makeIocs.install' failed make[1]: [makeIocs.install] Error 2 make[1]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/etc' /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES_DIRS:84: recipe for target 'etc.install' failed make: [etc.install] Error 2 bpmlab2 ~/xilinx/kiman/PandA/AD

kimanha commented 4 years ago

Is it right way for install boost lib?

bpmlab2 ~/xilinx/kiman/PandA/ADPandABlocks $ sudo apt install libboost-dev Reading package lists... Done Building dependency tree Reading state information... Done libboost-dev is already the newest version (1.58.0.1ubuntu1). 0 upgraded, 0 newly installed, 0 to remove and 567 not upgraded.

Or boost_1_71_0 ./bootstrap.sh --prefix=/usr/ ./b2 sudo ./b2 install

LeeHudsonDLS commented 4 years ago

To stop the failure after dls-xml-iocbuilder.py just delete the etc/ directory in the module and see if that builds. I'm afraid i'm not at all familiar with boost.

kimanha commented 4 years ago

etc/makeIocs/Makefile

XMLBUILDER := dls-xml-iocbuilder.py

XMLBUILDER := /dls_sw/work/common/python/iocbuilder/xmlbuilder/xmlbuilder.py

make[1]: Entering directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/etc' make -C ./makeIocs install make[2]: Entering directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/etc/makeIocs' make -C O.linux-x86_64 -f ../Makefile TOP=../../.. \ T_A=linux-x86_64 install make[3]: Entering directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/etc/makeIocs/O.linux-x86_64' rm -rf ../O.Common/tmp ../../makeIocs/O.Common/example e -o ../O.Common/tmp ../example.xml make[3]: e: Command not found ../Makefile:22: recipe for target '../../makeIocs/O.Common/example' failed make[3]: [../../makeIocs/O.Common/example] Error 127 (ignored) mv ../O.Common/tmp/example ../../makeIocs/O.Common/example mv: cannot stat '../O.Common/tmp/example': No such file or directory ../Makefile:22: recipe for target '../../makeIocs/O.Common/example' failed make[3]: [../../makeIocs/O.Common/example] Error 1 make[3]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/etc/makeIocs/O.linux-x86_64' /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES_ARCHS:58: recipe for target 'install.linux-x86_64' failed make[2]: [install.linux-x86_64] Error 2 make[2]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/etc/makeIocs' /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES_DIRS:84: recipe for target 'makeIocs.install' failed make[1]: [makeIocs.install] Error 2 make[1]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/etc' /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES_DIRS:84: recipe for target 'etc.install' failed make: [etc.install] Error 2

LeeHudsonDLS commented 4 years ago

Just remove the etc/ directory all together.

kimanha commented 4 years ago

Now no errors. ../iocs directory there is no st.cmd and I can't see bin directory. Is it needs additional IOC? Do you have your st.cmd for IOC start?

thomascobb commented 4 years ago

Unfortunately the iocbuilder application is somewhat tied to DLS infrastructure. I have attached an example IOC here: panda_ioc.tar.gz

kimanha commented 4 years ago

Thank you for example ioc. When I try to compilation I found error at my environment.

bpmlab2 ~/xilinx/kiman/PandA/panda_ioc $ make make -C ./configure install make[1]: Entering directory '/home/bpmlab2/xilinx/kiman/PandA/panda_ioc/configure' make -C O.linux-x86_64 -f ../Makefile TOP=../.. \ T_A=linux-x86_64 install make[2]: Entering directory '/home/bpmlab2/xilinx/kiman/PandA/panda_ioc/configure/O.linux-x86_64' perl -CSD /home/bpmlab2/xilinx/epics/base-3.15.6/bin/linux-x86_64/convertRelease.pl checkRelease make[2]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/panda_ioc/configure/O.linux-x86_64' make[1]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/panda_ioc/configure' make -C exampleApp/Db install make[1]: Entering directory '/home/bpmlab2/xilinx/kiman/PandA/panda_ioc/exampleApp/Db' make -C O.linux-x86_64 -f ../Makefile TOP=../../.. \ T_A=linux-x86_64 install make[2]: Entering directory '/home/bpmlab2/xilinx/kiman/PandA/panda_ioc/exampleApp/Db/O.linux-x86_64' make[2]: Nothing to be done for 'install'. make[2]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/panda_ioc/exampleApp/Db/O.linux-x86_64' make[1]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/panda_ioc/exampleApp/Db' make -C exampleApp/src install make[1]: Entering directory '/home/bpmlab2/xilinx/kiman/PandA/panda_ioc/exampleApp/src' make -C O.linux-x86_64 -f ../Makefile TOP=../../.. \ T_A=linux-x86_64 install make[2]: Entering directory '/home/bpmlab2/xilinx/kiman/PandA/panda_ioc/exampleApp/src/O.linux-x86_64' Creating dbd file example.dbd perl -CSD /home/bpmlab2/xilinx/epics/base-3.15.6/bin/linux-x86_64/dbdExpand.pl -I. -I.. -I../O.Common -I../../../dbd -I/home/bpmlab2/xilinx/epics/modules/synApps_6_0/support/areaDetector-R3-3-1/ADCore/dbd -I/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/dbd -I/home/bpmlab2/xilinx/epics/modules/synApps_6_0/support/asyn-R4-33/dbd -I/home/bpmlab2/xilinx/epics/modules/synApps_6_0/support/busy-R1-7/dbd -I/home/bpmlab2/xilinx/epics/base-3.15.6/dbd -o example.dbd base.dbd asyn.dbd busySupport.dbd ADSupport.dbd NDPluginSupport.dbd NDFileHDF5.dbd NDFileJPEG.dbd NDFileTIFF.dbd NDFileNull.dbd NDPosPlugin.dbd ADPandABlocks.dbd drvAsynIPPort.dbd dbdExpand.pl: Duplicate definition of record type 'mbbiDirect' Context: recordtype(mbbiDirect) in file '/home/bpmlab2/xilinx/kiman/PandA/ADPandABlocks/dbd/ADPandABlocks.dbd' while reading 'ADPandABlocks.dbd' to create 'example.dbd' dbdExpand.pl: Exiting due to errors /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES.Db:402: recipe for target '../O.Common/example.dbd' failed make[2]: [../O.Common/example.dbd] Error 255 make[2]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/panda_ioc/exampleApp/src/O.linux-x86_64' /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES_ARCHS:58: recipe for target 'install.linux-x86_64' failed make[1]: [install.linux-x86_64] Error 2 make[1]: Leaving directory '/home/bpmlab2/xilinx/kiman/PandA/panda_ioc/exampleApp/src' /home/bpmlab2/xilinx/epics/base-3.15.6/configure/RULES_DIRS:84: recipe for target 'exampleApp/src.install' failed make: *** [exampleApp/src.install] Error 2