Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

ADPandABlocks undefined reference to symbol #1

Open
kimanha opened this issue Sep 3, 2019 · 15 comments
Open

ADPandABlocks undefined reference to symbol #1

kimanha opened this issue Sep 3, 2019 · 15 comments

Comments

@kimanha
Copy link

kimanha commented Sep 3, 2019

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
Copy link

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

@LeeHudsonDLS
Copy link
Contributor

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

@kimanha
Copy link
Author

kimanha commented Sep 5, 2019

I tried cloned again and the same issue.
Thanks,

@LeeHudsonDLS
Copy link
Contributor

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
Copy link
Contributor

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
Copy link
Author

kimanha commented Sep 14, 2019

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 to boost::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 to boost::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 to boost::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 to boost::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 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 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 to boost::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 >, 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 function boost::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 to boost::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 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, 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 to boost::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 function boost::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 to boost::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<char const>, 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, 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 to boost::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 to boost::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 to boost::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 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 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 to boost::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 >, 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 function boost::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 to boost::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 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, 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 to boost::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 to boost::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 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 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 to boost::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 >, 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 function boost::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 to boost::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 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, 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 to boost::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 to boost::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 to boost::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 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 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 to boost::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::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 to boost::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<char const>, 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, 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 to boost::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 to boost::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 to boost::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 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 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 to boost::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 >, 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 function boost::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 to boost::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 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, 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 to boost::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 to boost::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 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 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 to boost::unit_test::lazy_ostream::inst' /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 to boost::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::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 to boost::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<char const>, 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, 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::ut_detail::global_configuration_impl<ADPandABlocksGlobalFixture>::~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 function boost::unit_test::ut_detail::global_configuration_impl<ADPandABlocksGlobalFixture>::~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 function boost::unit_test::make_test_case(boost::function<void ()> const&, boost::unit_test::basic_cstring<char const>, boost::unit_test::basic_cstring<char const>, 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, boost::unit_test::basic_cstring, unsigned long, boost::function<void ()> const&)'
test_ADPandABlocks.o: In function __static_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 function boost::unit_test::ut_detail::global_configuration_impl<ADPandABlocksGlobalFixture>::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 function __static_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 to boost::unit_test::ut_detail::auto_test_unit_registrar::auto_test_unit_registrar(boost::unit_test::basic_cstring<char const>, boost::unit_test::basic_cstring<char const>, 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 to boost::unit_test::ut_detail::auto_test_unit_registrar::auto_test_unit_registrar(boost::unit_test::basic_cstring<char const>, boost::unit_test::basic_cstring<char const>, 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 to boost::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 to boost::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 to boost::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 to boost::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 to boost::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 to boost::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 to boost::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
Copy link
Contributor

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_X86_64_ -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_X86_64_ -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_X86_64_ -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
Copy link
Author

kimanha commented Sep 17, 2019

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
Copy link
Author

kimanha commented Sep 17, 2019

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
Copy link
Contributor

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
Copy link
Author

kimanha commented Sep 19, 2019

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
Copy link
Contributor

Just remove the etc/ directory all together.

@kimanha
Copy link
Author

kimanha commented Sep 19, 2019

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
Copy link

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

@kimanha
Copy link
Author

kimanha commented Sep 24, 2019

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

CasperVector added a commit to CasperVector/ADPandABlocks that referenced this issue Dec 11, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants