Python ./configure не знаходить компілятор g ++


12

Я намагаюся компілювати Python 3.4.1 на емульованій машині ARM (з Debian 7). ./configureдає мені

checking for g++... no

але встановлено g ++. То в чому може бути проблема? Я знаю, що це не дуже необхідно, але я вважаю за краще makeвикористовувати g ++ для коду c ++.


Ви впевнені g++, що встановлено на машині, яку ви збираєте? Що робиться command -v g++на цій машині? Як ви встановили g ++ на цій машині?
Ендрю Стубс

Ви впевнені, що g ++ встановлений у тому місці, на яке вказує сценарій збірки.
Рамхаунд

Що g++ -dumpmachineговорить? Бігти з того ж контексту, що і./configure
ctrl-alt-delor

@AndrewStubbs: root@debian:~/python3-3.4.1# command -v g++/ usr / bin / g ++. Я думаю, що g ++ був попередньо встановлений, оскільки я не встановив жодного іншого пов'язаного пакету.
Марко Сулла

@Ramhound: Я впевнений, оскільки також є gcc /usr/bin. Налаштуйте знахідки gcc, але не g ++. З конфігурації вихідного коду здається, що шлях пошуку точно такий же.
Марко Сулла

Відповіді:


11

Обхід:

CXX=/usr/bin/g++ ./configure

У будь-якому випадку це дуже дивно, і здається, що це помилка в сценарії налаштування. Здається, це відома проблема . Що ж, добре...


EDIT : Схоже, --with-cxx-mainце варіант з іншою метою. На деяких платформах це потрібно для підтримки модулів розширення C ++. Я оновив свою відповідь вище.


Дивіться також випуск звіту на bugs.python.org/issue25946
Карл Ріхтер

2

Ви можете встановити розташування g ++ вручну, використовуючи змінну середовища, передану для налаштування, як описано в довідці:

Usage: ./configure [OPTION]... [VAR=VALUE]...

Наприклад, якщо ви запускаєте налаштування зі спеціальним префіксом, ваша команда буде:

./configure --prefix=/home/user/.local CXX="/usr/bin/g++"
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.