On Fri, Nov 08, 2002 at 02:34:20AM +0300, Ivan Zakharyaschev wrote: > Обнаружилось, что в последних сборках emacs archlibdir прнимала значение > .../i686-pc-linux-gnu, хотя должна была, как и раньше, > .../i586-alt-linux (#1535). > > Оказалось, что rpm-макрос %configure теперь передаёт ./configure > параметр --build=%_target_platform. После чтения документации по > autoconf и configure (Canadian Cross), я понял, что это в общем-то не > то, что хочется: на самом деле надо устанавливать --host, а не --build: > > --build - тип машины, на которой производится сборка > --host - для которой (если не указан, угадывается по типу машины, на > которой производится сборка, при этом значение --build не используется) > --target - очень редкая вещь; нужна для сборки кросс-компиляторов. > > Т.е. все эти слова надо понимать по отношению к программе, которая > собирается. > > После добавления: > > %define _configure_target --host=%_target_platform > > в emacs.spec собралось, как надо. > > Кто неправ? Неполное цитирование приводит к неправильному пониманию. Вот, например: "whenever you specify `--host', be sure to specify `--build' too" > Могли ли ещё какие-нибудь пакеты "пострадать" подобным образом при > пересборке? Думаю, что "старые" или нестандартные пакеты типа glibc и binutils, где мне приходилось переопределять %_configure_target. > Ещё я нашёл среди макросов rpm сложный %GNUconfigure, но он, по-моему, > нигде не описан. Зачем он нужен? Он не нужен. Предлагаете передавать --build=%_target_platform --host=%_target_platform? -- ldv