не собирается _без_ -O2

Started by user318, December 05, 2011, 08:18:50 PM

Previous topic - Next topic

user318

Почему-то у меня под gentoo с параметром CFLAGS/CXXFLAGS=-O2 собирается пакет. А если убрать -O2, то выдаёт такое:

Making all in netxmsd
make[4]: Entering directory `/var/tmp/portage/net-analyzer/netxms-1.1.6/work/netxms-1.1.6/src/server/netxmsd'
  CXX    netxmsd.o
netxmsd.cpp: In function 'BOOL ParseCommandLine(int, char**)':
netxmsd.cpp:206:29: warning: format not a string literal and no format arguments
netxmsd.cpp:209:96: warning: use of 'h' length modifier with 's' type character
netxmsd.cpp:231:84: warning: use of 'h' length modifier with 's' type character
netxmsd.cpp: In function 'int main(int, char**)':
netxmsd.cpp:417:77: warning: use of 'h' length modifier with 's' type character
  CXXLD  netxmsd
../core/.libs/libnxcore.so: undefined reference to `ServiceContainer::secondsInWeek'
../core/.libs/libnxcore.so: undefined reference to `ServiceContainer::secondsInDay'
collect2: ld returned 1 exit status
make[4]: *** [netxmsd] Error 1
make[4]: Leaving directory `/var/tmp/portage/net-analyzer/netxms-1.1.6/work/netxms-1.1.6/src/server/netxmsd'

Сейчас ещё проверил другие варианты:
-O0 - не собирается (что и следовало ожидать)
-O1 - собирается
-Os - собирается
-O3 - собирается
Ну т.е. начиная с -O1 собирается.
Пробовал просто включить флаги оптимизации, указанные в мане для -O1 - не собралось. Видимо -O1 ещё какую-то магию делает.