ошибка icpc № 10104: невозможно открыть «tbb_placeholder» BOOST + ICPC + TBB + C++11

Я пытался скомпилировать код boost+Intel TBB с помощью компилятора Intel (ICC-13.0.1). Библиотека TBB самая последняя (4.2), а boost — 1.55.0. Код включает функции C++11, поэтому я использую флаг std=c++11.

Я получаю эту ошибку:

icpc: error #10104: unable to open 'tbb_pLaCeHoLdEr'
make: *** [driver.o] Error 1

Содержимое моего Makefile следующее:

INCLUDE_PROJECT = /home/aniketnp/multiproc/
INCLUDE_BOOST   = /home/aniketnp/boost_1_55_0/
TBB_L = /home/aniketnp/tbb42_20140122oss/lib/intel64
TBB_I = /home/aniketnp/tbb42_20140122oss/include



 CXXFLAGS = -I$(INCLUDE_PROJECT) -I$(INCLUDE_BOOST) -I$(TBB_I) -L$(TBB_L) -tbb -lpthread -std=c++11

Может ли кто-нибудь предположить, что может быть возможной ошибкой?

  1. Boost и TBB находятся в моем домашнем каталоге.
  2. ICC13.1 загружается через модуль в нашем кластере.
  3. Переменная LD_LIBRARY_PATH правильно отображает переменную TBB_L в make-файле (правильно экспортированную в файл .bashrc.

person Pogo    schedule 01.05.2014    source источник
comment
невозможность открытия обычно означает, что открытие не удалось, что обычно происходит из-за того, что у вас нет разрешений, или оно не существует, когда вы ожидаете, или существует, когда вы этого не сделали... вы делали sudo make раньше и делаете make сейчас или переменная tbb_pLaCeHoLdEr должна быть расширена?   -  person Grady Player    schedule 02.05.2014
comment
Я не могу сделать sudo make, так как я не root. Я просто загружаю модуль компилятора Intel и могу начать использовать компилятор. tbb_pLaCeHoLdEr не является переменной как таковой. я не знаю, откуда это идет   -  person Pogo    schedule 02.05.2014


Ответы (1)


похоже на ошибку установки чего-то, что использует TBB. TBB имеет аналогичное место в сценариях tbbvars.sh, но вместо этого использует «SUBSTITUTE_INSTALL_DIR_HERE». Итак, найдите tbb_pLaCeHoLdEr в своем проекте и его компонентах и ​​замените соответственно

person Anton    schedule 02.05.2014