При сборке этого проекта в RelWithDebInfo
типе сборки компиляция занимает столько времени, что я просто прекращаю процесс.
Существует большой исходный код ( например, ), и __attribute__((optimize("O0")))
используется для отключения оптимизации компилятора с помощью GCC.
Хотя это работает в режиме Debug
или Release
, похоже, что это не работает в режиме RelWithDebInfo
.
Протестированная среда Ubuntu 16.04
и GCC 5.4.0
.
Есть ли обходной путь, чтобы избежать этой проблемы, кроме обновления до новой версии GCC? Это ошибка компилятора?
Чтобы воспроизвести проблему на Ubuntu 16.04
с GCC 5.4.0
, что-то вроде:
git clone https://github.com/AprilRobotics/apriltags.git
git checkout 0269850
cd apriltags
mkdir build
cd build
ccmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo
make -j4 //this takes too much time with GCC 5.4.0