Intel® oneAPI Threading Building Blocks
Ask questions and share information about adding parallelism to your applications when using this threading library.
2465 Discussions

Building TBB with mingw : enable-runtime-pseudo-reloc-v2 error

Nicolas_Pays
Beginner
644 Views

Hi All,

I'm trying to use tbb with code blocks (10.05, with gcc 4.4 and gmake 3.81 coming with the installer).

So I'm first trying to build the .a and .dll for tbb and tbb_malloc (i've always worked with the visual binary versions until now)

When i run "mingw32-make compiler=gcc arch=ia32 runtime=mingw tbb", it creates the object files correctly in the build folder, but fails at the link step with the following message:

g++ -o tbb_debug.dll concurrent_hash_map.o concurrent_queue.o concurrent_vecto
r.o dynamic_link.o itt_notify.o cache_aligned_allocator.o pipeline.o queuing_mut
ex.o queuing_rw_mutex.o reader_writer_lock.o spin_rw_mutex.o spin_mutex.o critic
al_section.o task.o tbb_misc.o mutex.o recursive_mutex.o condition_variable.o tb
b_thread.o concurrent_monitor.o private_server.o rml_tbb.o task_group_context.o
governor.o market.o arena.o scheduler.o observer_proxy.o tbb_main.o concurrent_v
ector_v2.o concurrent_queue_v2.o spin_rw_mutex_v2.o task_v2.o -lpsapi -shared
-Wl,--enable-runtime-pseudo-reloc-v2 -m32 -Wl,--version-script,tbb.def
c:/program files (x86)/codeblocks/mingw/bin/../lib/gcc/mingw32/4.4.1/../../../..
/mingw32/bin/ld.exe: unrecognized option '--enable-runtime-pseudo-reloc-v2'

c:/program files (x86)/codeblocks/mingw/bin/../lib/gcc/mingw32/4.4.1/../../../..
/mingw32/bin/ld.exe: use the --help option for usage information
collect2: ld returned 1 exit status
mingw32-make[1]: *** [tbb_debug.dll] Error 1
mingw32-make[1]: Leaving directory `[..]/tbb30_035/build/windows_ia32_gcc_mingw_debug'
mingw32-make: *** [tbb] Error 2

What did I do wrong ?

Regards,

0 Kudos
4 Replies
Vladimir_P_1234567890
644 Views
Hi Nicolas,
This option is used in binutils v2.20. if you use older version of binutils/ld (e.g. 2.17) you can try just to delete it.
--Vladimir
0 Kudos
Vladimir_P_1234567890
644 Views
Actually the problem caused by absence ofenable-runtime-pseudo-reloc-v2 option was fixed in binutils2.20.51 so I suppose that we will also remove this option from our makefiles.
--Vladimir
0 Kudos
Nicolas_Pays
Beginner
644 Views
Hi,
thank you i'm gonna try that.
I forgot to mention i used the latest commecial aligned TBB 3.0 sources.
Regards,
Nicolas.
0 Kudos
Vladimir_P_1234567890
644 Views
right, the option was added to the latest released versionin order to support mingw gcc 4.5.
--Vladimir
0 Kudos
Reply