С новым питоном и (видимо) пересборкой scons-а как минимум сломалась сборка lprof. Отчёт о несобираемости пришёл в день попадания нового питона в сизиф. Визуально это выглядит так: Checking for C header file tiff.h... yes Checking for C header file usb.h... yes Checking for C++ header file vigra/impex.hxx... no You need to have VIGRA installed. В BuildRequires libvigra-devel, конечно, есть. Сам impex.hxx лежит на месте и как раз тут всё хорошо. Плохо в том месте, где scons генерит тесты на проверку использования этого самого impex.hxx. Выглядит примерно так: # check for VIGRA headers if not config.CheckCXXHeader('vigra/impex.hxx'): print "You need to have VIGRA installed." print "On some Linux Distros you may need to install the devel package for VIGRA." Exit(1) Получается файл conftest_3.cpp, содержащий: #include "vigra/impex.hxx" В 5.1 получается тоже самое. Далее начинается разное. В 5.1 этот файл компилируется корректно, в Сизифе же нет (как следствие, conftest_3.o не создаётся и т.п.). Если поглядеть в config.log, то становится видно, что при формировании командной строки вызова g++ для CheckCXXHeader с какого-то перепугу для debug build (а по умолчанию он включен) добавляется не "-g", а "- g"! Именно так, с пробелом! Это не единственное появление пробелов. Если выключить debug build и перейти к сборке, будет красивее. Спотыкается практически сразу же, вот на такой прекрасной строчке: g++ -o build/linux/lprofqt/lprofmain.o -c -O3 -Wall -pipe -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII - D Q T _ T H R E A D _ S U P P O R T - D U N I X - D Q T _ T H R E A D _ S U P P O R T -O3 -Wall -pipe -D_FORTIFY_SOURCE=0 -DLPROF_ERROR_TRAP -DENABLE_USB -DO_BINARY -DUSE_FLOAT -DUNIX -DNON_WINDOWS -DLPROF_ERROR_TRAP -DENABLE_USB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_QT3SUPPORT_LIB -DQT_SHARED -DQT3_SUPPORT - /usr/include/QtAssistant -I/usr/include/qt4/QtAssistant -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtCore -I/usr/include/qt4/Qt3Support -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtSql -I/usr/include/qt4/QtAssistant -Isrc/lcms/include -Isrc/libqtlcmswidgets -Isrc/liblprof -Isrc/lprofqt -Isrc/checkerqt -Isrc/gammaqt -Isrc/IDqt -Isrc/monqt -Isrc/moncalqt -Isrc/moncalcontrolqt -Isrc/parmsqt -Isrc/reference_inst_qt -Isrc/argyll/rspl -Isrc/argyll/numlib -Isrc/solvopt -Isrc/argyll/h -Isrc/argyll/spectro -Isrc/argyll/xicc -Isrc/argyll/icc -Isrc/argyll/plot -Isrc/argyll/gamut -Isrc/argyll/profile -Isrc/argyll/cgats -Isrc/argyll/plot -Isrc/videoLUTutils - build/linux/libqtlcmswidgets -Ibuild/linux/lprofqt -Ibuild/linux/checkerqt -Ibuild/linux/gammaqt -Ibuild/linux/IDqt -Ibuild/linux/monqt - build/linux/parmsqt -Ibuild/linux/reference_inst_qt -Ibuild/linux/moncalqt -Ibuild/linux/moncalcontrolqt -Ibuild/linux/solvopt -I/usr/include -I/usr/pkg/include -I/usr/local/include -I/usr/local/pkg/include src/lprofqt/lprofmain.cpp Обращаю внимание на извращение - D Q T _ T H R E A D _ S U P P O R T - D U N I X - D Q T _ T H R E A D _ S U P P O R T К сожалению, с таким scons-ом собирать что-то если и получится, то это будет, скорее, удивительно :)
Это очень давно (с лета лично мне) известная проблема. Лечится обычно превращением параметров типа CFLAGS из строк в массивы: http://git.altlinux.org/people/real/packages/widelands.git?p=widelands.git;a=commitdiff;h=b4eb687f1bf0c7157f97661a8663e583cfdceeab Либо вообще как-то через неприличные позы :( Так что тут по-человечески выход один: собрать-таки новый scons, раз уж новый питон приехал.
Подозреваю, что от скисшего scons сломались не только lprof и ardour. Неужели сборка новой версии настолько сложна? У меня это получилось не намного сложнее простой подмены исходников (какие-то непринципиальные проблемы были, сейчас, к сожалению, не вспомню, что-то в районе %files).
Новый scons уехал в сизиф.
Как минимум в случае lprof помогло. Спасибо.