#!/bin/bash
function MY_CODE(){
START_TIME_SECONDS=$(date +%s)
<your code>
END_TIME_SECONDS=$(date +%s)
SCRIPT_RUN_TIME_IN_SECONDS=$((${END_TIME_SECONDS}-${START_TIME_SECONDS}))
SLEEP_TIME=$((3600-${SCRIPT_RUN_TIME_IN_SECONDS}))
sleep ${SLEEP_TIME}
}
MY_CODE()
Все ошибки компиляции в журнале сборки имеют вид:
error: narrowing conversion of ‘ddd’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
Существует множество других средств диагностики компилятора, но все они являются предупреждениями, -а не ошибки -, с которыми можно жить.
Ошибки возникают из-за того, чтоwxGTK2-2.8.12
-выпущен в марте 2011 г. -был написан для компиляции по более раннему стандарту C++ (C++98, то есть C++ 1998 )чем стандарт, который используется по умолчанию для вашего компилятора g++
,сейчас в июле 2017. Я предполагаю, что у вас есть компилятор g++
6 или более поздней версии, который по умолчанию использует C++14 (C++ 2014 ). Начиная со стандарта C++11, сужающее преобразование, которое нарушает вашу сборку был признан плохо -сформированным, чего раньше не было.
Вы можете указать g++
компилировать в соответствии со стандартом C++ по вашему выбору, передав ему опцию -std={c++98|c++03|c++11|c++14|c++17}
, и вы можете передайте свой выбор скрипту wxGTK2-2.8.12
configure
, включив его в значение параметра CXXFLAGS
для ./configure
. Любой из -std=c++98
или -std=c++03
удалит ошибки преобразования сужения, например.
../configure CXXFLAGS=-std=c++03 --prefix=/opt/wx/2.8 --enable-xrc --enable-monolithic --enable-unicode
В качестве альтернативы вы можете просто дать указание g++
подавить диагностику, обозначенную-Wnarrowing
:
../configure CXXFLAGS=-Wno-narrowing --prefix=/opt/wx/2.8 --enable-xrc --enable-monolithic --enable-unicode
Скрипт ./configure
любого пакета GNU autotools (, такой как вы пытаетесь сборка )будет иметь параметры, включая:
CC C compiler command
CFLAGS C compiler flags
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
nonstandard directory <lib dir>
CPPFLAGS C/C++ preprocessor flags, e.g. -I<include dir> if you have
headers in a nonstandard directory <include dir>
CPP C preprocessor
CXX C++ compiler command
CXXFLAGS C++ compiler flags
, которые помогут вам скорректировать отклонения между вашей цепочкой инструментов и значения по умолчанию, которые ожидались сопровождающими пакета при выпуске упаковка. См. ./configure --help
.