#878832 tbb: FTBFS on hppa: rml::pool_* undefined

Package:
src:tbb
Source:
tbb
Submitter:
"Aaron M. Ucko"
Date:
2022-06-17 19:57:05 UTC
Severity:
important
Tags:
#878832#5
Date:
2017-10-17 02:26:12 UTC
From:
To:
Builds of tbb for hppa (admittedly not a release architecture) have
been failing lately, per the below excerpt from

https://buildd.debian.org/status/fetch.php?pkg=tbb&arch=hppa&ver=2017%7EU7-8&stamp=1507135727&raw=0

Could you please take a look?

Thanks!
------------------------------------------------------------

test_ScalableAllocator.o: In function `tbb::interface6::memory_pool<NullAllocator>::memory_pool(NullAllocator const&)':
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:224: undefined reference to `rml::pool_create_v1(int, rml::MemPoolPolicy const*, rml::MemoryPool**)'
test_ScalableAllocator.o: In function `tbb::interface6::internal::pool_base::malloc(unsigned int)':
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:58: undefined reference to `rml::pool_malloc(rml::MemoryPool*, unsigned int)'
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:58: undefined reference to `rml::pool_malloc(rml::MemoryPool*, unsigned int)'
test_ScalableAllocator.o: In function `tbb::interface6::fixed_pool::fixed_pool(void*, unsigned int)':
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:260: undefined reference to `rml::pool_create_v1(int, rml::MemPoolPolicy const*, rml::MemoryPool**)'
test_ScalableAllocator.o: In function `tbb::interface6::internal::pool_base::malloc(unsigned int)':
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:58: undefined reference to `rml::pool_malloc(rml::MemoryPool*, unsigned int)'
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:58: undefined reference to `rml::pool_malloc(rml::MemoryPool*, unsigned int)'
test_ScalableAllocator.o: In function `tbb::interface6::memory_pool<tbb::scalable_allocator<int> >::memory_pool(tbb::scalable_allocator<int> const&)':
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:224: undefined reference to `rml::pool_create_v1(int, rml::MemPoolPolicy const*, rml::MemoryPool**)'
test_ScalableAllocator.o: In function `tbb::interface6::fixed_pool::fixed_pool(void*, unsigned int)':
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:260: undefined reference to `rml::pool_create_v1(int, rml::MemPoolPolicy const*, rml::MemoryPool**)'
test_ScalableAllocator.o: In function `tbb::interface6::internal::pool_base::malloc(unsigned int)':
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:58: undefined reference to `rml::pool_malloc(rml::MemoryPool*, unsigned int)'
test_ScalableAllocator.o: In function `tbb::interface6::internal::pool_base::realloc(void*, unsigned int)':
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:66: undefined reference to `rml::pool_realloc(rml::MemoryPool*, void*, unsigned int)'
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:66: undefined reference to `rml::pool_realloc(rml::MemoryPool*, void*, unsigned int)'
test_ScalableAllocator.o: In function `tbb::interface6::internal::pool_base::malloc(unsigned int)':
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:58: undefined reference to `rml::pool_malloc(rml::MemoryPool*, unsigned int)'
test_ScalableAllocator.o: In function `tbb::interface6::memory_pool<MinimalAllocator>::memory_pool(MinimalAllocator const&)':
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:224: undefined reference to `rml::pool_create_v1(int, rml::MemPoolPolicy const*, rml::MemoryPool**)'
test_ScalableAllocator.o: In function `tbb::interface6::internal::pool_base::malloc(unsigned int)':
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:58: undefined reference to `rml::pool_malloc(rml::MemoryPool*, unsigned int)'
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:58: undefined reference to `rml::pool_malloc(rml::MemoryPool*, unsigned int)'
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:58: undefined reference to `rml::pool_malloc(rml::MemoryPool*, unsigned int)'
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:58: undefined reference to `rml::pool_malloc(rml::MemoryPool*, unsigned int)'
./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:58: undefined reference to `rml::pool_malloc(rml::MemoryPool*, unsigned int)'
test_ScalableAllocator.o:./build/linux_parisc64_gcc_cc7_libc2.24_debug/../../include/tbb/memory_pool.h:58: more undefined references to `rml::pool_malloc(rml::MemoryPool*, unsigned int)' follow
collect2: error: ld returned 1 exit status
../../build/common_rules.inc:94: recipe for target 'test_ScalableAllocator.exe' failed

#878832#10
Date:
2018-12-22 20:23:47 UTC
From:
To:
The problem is "arch" is not defined for hppa in linux.inc.

Regards,
Dave Anglin

#878832#15
Date:
2019-06-08 16:24:19 UTC
From:
To:
Ping.
Dave

#878832#20
Date:
2019-07-08 11:53:33 UTC
From:
To:
2019~U8-1   still fails for same reason.

Dave

#878832#25
Date:
2020-01-07 13:28:33 UTC
From:
To:
Patch still fixes hppa build.

Regards,
Dave Anglin

#878832#30
Date:
2021-10-07 18:32:23 UTC
From:
To:
With patch previously sent, vtk9 builds successfully.  Please update linux.inc.

Thanks,
Dave

#878832#35
Date:
2022-01-08 09:24:18 UTC
From:
To:
Hello!

tbb no longer FTBFS on hppa, so this issue can probably be closed.

Adrian

#878832#42
Date:
2022-06-17 19:47:20 UTC
From:
To:
This build included the patch that I submitted, so the issue is still open.

tbb does build under qemu but the build is broken.  See odin build:
https://buildd.debian.org/status/fetch.php?pkg=odin&arch=hppa&ver=2.0.5-3%2Bb1&stamp=1655483730&raw=0

[...]
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -O3 -fno-tree-vectorize -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -Wformat
-Werror=format-security   -o odin odincomp.o odinconf.o odindebugger.o odindialog_progress.o odindialog_process.o odindialog_system.o 
odindialog_system_moc.o odindialog_debug.o odindialog_debug_moc.o odindialog_idea.o odindialog_idea_moc.o odindialog_pulsar.o
odindialog_pulsar_moc.o odindialog_tree.o odindialog_kspace.o odindialog_kspace_moc.o odindialog_new.o odindialog_new_moc.o odinmethod.o
odinplot_range.o odinplot_range_moc.o odinplot_vtk.o odinplot.o odinplot_moc.o odinview.o odinview_moc.o odin.o odin_moc.o main.o
../odinseq/libodinseq.la ../odinqt/libodinqt.la ../odinpara/libodinpara.la ../tjutils/libtjutils.la -lvtkRenderingOpenGL2-9.1
-lvtkRenderingCore-9.1 -lvtkInteractionStyle-9.1 -lvtkFiltersSources-9.1 -lvtkFiltersGeneral-9.1 -lvtkFiltersCore-9.1 -lvtkCommonTransforms-9.1 
-lvtkCommonSystem-9.1 -lvtkCommonMisc-9.1 -lvtkCommonMath-9.1 -lvtkCommonExecutionModel-9.1 -lvtkCommonDataModel-9.1 -lvtkCommonCore-9.1 
-lvtkCommonComputationalGeometry-9.1 -lvtkCommonColor-9.1  -lqwt-qt5 -lQt5PrintSupport -lQt5Widgets -lQt5Gui -lQt5Core  -lgsl -lgslcblas 
-lpthread -ldl -lm
libtool: link: g++ -O3 -fno-tree-vectorize -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -Wformat -Werror=format-security -o .libs/odin odincomp.o
odinconf.o odindebugger.o odindialog_progress.o odindialog_process.o odindialog_system.o odindialog_system_moc.o odindialog_debug.o
odindialog_debug_moc.o odindialog_idea.o odindialog_idea_moc.o odindialog_pulsar.o odindialog_pulsar_moc.o odindialog_tree.o odindialog_kspace.o
odindialog_kspace_moc.o odindialog_new.o odindialog_new_moc.o odinmethod.o odinplot_range.o odinplot_range_moc.o odinplot_vtk.o odinplot.o
odinplot_moc.o odinview.o odinview_moc.o odin.o odin_moc.o main.o ../odinseq/.libs/libodinseq.so ../odinqt/.libs/libodinqt.so
../odinpara/.libs/libodinpara.so ../tjutils/.libs/libtjutils.so -lvtkRenderingOpenGL2-9.1 -lvtkRenderingCore-9.1 -lvtkInteractionStyle-9.1
-lvtkFiltersSources-9.1 -lvtkFiltersGeneral-9.1 -lvtkFiltersCore-9.1 -lvtkCommonTransforms-9.1 -lvtkCommonSystem-9.1 -lvtkCommonMisc-9.1 
-lvtkCommonMath-9.1 -lvtkCommonExecutionModel-9.1 -lvtkCommonDataModel-9.1 -lvtkCommonCore-9.1 -lvtkCommonComputationalGeometry-9.1 
-lvtkCommonColor-9.1 -lqwt-qt5 -lQt5PrintSupport -lQt5Widgets -lQt5Gui -lQt5Core -lgsl -lgslcblas -lpthread -ldl -lm -Wl,-rpath 
-Wl,/usr/lib/hppa-linux-gnu/odin
/usr/bin/ld: warning: /usr/lib/gcc/hppa-linux-gnu/11/../../../hppa-linux-gnu/crtn.o: missing .note.GNU-stack section implies executable stack
/usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
/usr/bin/ld: warning: .libs/odin has a LOAD segment with RWX permissions
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/11/../../../hppa-linux-gnu/libvtkRenderingCore-9.1.so: undefined reference to
`tbb::internal::allocate_continuation_proxy::allocate(unsigned int) const'
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/11/../../../hppa-linux-gnu/libvtkRenderingCore-9.1.so: undefined reference to
`tbb::internal::concurrent_vector_base_v3::internal_grow_by(unsigned int, unsigned int, void (*)(void*, void const*, unsigned int), void const*)'
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/11/../../../hppa-linux-gnu/libvtkRenderingCore-9.1.so: undefined reference to
`tbb::internal::concurrent_vector_base_v3::internal_clear(void (*)(void*, unsigned int))'
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/11/../../../hppa-linux-gnu/libvtkRenderingCore-9.1.so: undefined reference to
`tbb::internal::allocate_child_proxy::allocate(unsigned int) const'
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/11/../../../hppa-linux-gnu/libvtkRenderingCore-9.1.so: undefined reference to
`tbb::internal::NFS_Allocate(unsigned int, unsigned int, void*)'
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/11/../../../hppa-linux-gnu/libvtkRenderingCore-9.1.so: undefined reference to
`tbb::internal::allocate_via_handler_v3(unsigned int)'
/usr/bin/ld: /usr/lib/gcc/hppa-linux-gnu/11/../../../hppa-linux-gnu/libvtkRenderingCore-9.1.so: undefined reference to
`tbb::internal::allocate_root_with_context_proxy::allocate(unsigned int) const'

Dave