Нет поддержки C ++ pthread в сборке фермы?

516
John Westlund

Я пытаюсь получить компиляцию кода в сборочной ферме. Когда я строю его на своей машине разработки, все идет хорошо:

checking if C compiler and POSIX threads work as is... no checking if C++ compiler and POSIX threads work as is... no checking if C compiler and POSIX threads work with -Kthread... no checking if C compiler and POSIX threads work with -kthread... no checking if C compiler and POSIX threads work with -pthread... yes checking if C++ compiler and POSIX threads work with -Kthread... no checking if C++ compiler and POSIX threads work with -kthread... no checking if C++ compiler and POSIX threads work with -pthread... yes checking for pthread_mutexattr_setpshared... yes checking for pthread_condattr_setpshared... yes checking for PTHREAD_MUTEX_ERRORCHECK_NP... yes checking for PTHREAD_MUTEX_ERRORCHECK... yes checking for working POSIX threads package... yes 

Но когда я передаю его ферме сборки, он не может найти работающую опцию компилятора, чтобы включить поддержку pthread:

[ 87s] checking if C compiler and POSIX threads work as is... no [ 87s] checking if C++ compiler and POSIX threads work as is... no [ 87s] checking if C compiler and POSIX threads work with -Kthread... no [ 87s] checking if C compiler and POSIX threads work with -kthread... no [ 87s] checking if C compiler and POSIX threads work with -pthread... yes [ 87s] checking if C++ compiler and POSIX threads work with -Kthread... no [ 87s] checking if C++ compiler and POSIX threads work with -kthread... no [ 87s] checking if C++ compiler and POSIX threads work with -pthread... no [ 87s] checking if C++ compiler and POSIX threads work with -pthreads... no [ 87s] checking if C++ compiler and POSIX threads work with -mt... no [ 87s] checking if C++ compiler and POSIX threads work with -mthreads... no [ 87s] checking if C++ compiler and POSIX threads work with -lpthreads... no [ 87s] checking if C++ compiler and POSIX threads work with -llthread... no [ 87s] checking if C++ compiler and POSIX threads work with -lpthread... no [ 87s] checking for pthread_mutexattr_setpshared... yes [ 87s] checking for pthread_condattr_setpshared... yes [ 87s] checking for PTHREAD_MUTEX_ERRORCHECK_NP... yes [ 87s] checking for PTHREAD_MUTEX_ERRORCHECK... yes [ 87s] checking for working POSIX threads package... no [ 87s] configure: WARNING: "*** POSIX threads are not" [ 87s] configure: WARNING: "*** available on your system " [ 87s] configure: error: "*** Can not continue" 

Устройство dev и buildfarm используют одну и ту же базовую ОС - единственное отличие состоит в том, что среда на buildfarm очень минимальна, устанавливая только пакеты, требуемые файлом спецификации, поверх небольшого набора базовых пакетов ОС.

Я не могу думать ни о каком «недостающем пакете», который вызвал бы такое поведение. glibc- * установлены на обоих.

0
«только установка пакетов, требуемых спецификацией» - очевидно, в файле спецификации отсутствует требуемый пакет. Я предлагаю начать помещать пакеты, которые не существуют, при минимальной установке, пока она не заработает. Ramhound 8 лет назад 0
Попробуйте `yum install libxcb-devel` (я предполагаю, что yum из-за rpmbuild) Mahmoud Al-Qudsi 8 лет назад 0
@ MahmoudAl-Qudsi - ни на одной машине не установлен libxcb-devel. Добавление его в систему сборки фермы, похоже, не имеет значения. John Westlund 8 лет назад 0
@Ramhound - Очень хорошо может быть. Я добавлял вещи, но я исчерпал все, что кажется даже отдаленно связанным. То же самое касается окружающей среды, которую я не исключил полностью, будучи проблемой John Westlund 8 лет назад 0
`libglibXXX-dev` установлен? PKG-конфигурации? Обычно такие ошибки связаны с X-dev. Найдите связанный пакет -dev для установки. Вытащите список установленных пакетов в вашей системе, а в системе сборки фермы сравните? lornix 8 лет назад 0

1 ответ на вопрос

0
Ares Fowl

Фактический кредит / источник: https://forums.opensuse.org/showthread.php/509781-No-C-Pthread-support-inside-OBS от wolfi323

Я столкнулся с подобной проблемой при попытке настроить [Open MPI 3] на:

./configure CC=gcc CXX=gcc FC=gfortran 

Ответ wolfi323 на forums.opensuse подразумевает, что компилятор c ++ не был указан надлежащим образом . Я оставил параметры компилятора c / c ++ пустыми:

./configure FC=gfortran 

Конфигурация сообщила:

checking if C++ compiler and POSIX threads work with -Kthread... no checking if C++ compiler and POSIX threads work with -kthread... no checking if C++ compiler and POSIX threads work with -pthread... yes 

и завершено.

дополнительный

настройка

CC=gcc CXX=g++ 

дал те же / похожие результаты, что и ./configure нашел компиляторы по умолчанию.

Похожие вопросы