Обертка вокруг GNU ld, которая не поддерживает скрипты компоновщика
. Некоторые .so-файлы на самом деле являются GNU ld ссылками-компоновщиками , например. Файл libtbb.so является текстовым файлом ASCII с этим содержимым:
INPUT (libtbb.so.2)
Некоторые более сложные сборки могут не поддерживать это. Например, если вы включаете -v в параметры компилятора, вы можете видеть, что mainwin gcc wrapper mwdip отбрасывает файлы команд сценария компоновщика в подробном списке результатов библиотек для ссылки. Простая работа вместо файла командной строки ввода сценария компоновщика вместо копии (или символической ссылки), например
cp libtbb.so.2 libtbb.so
Или вы можете заменить аргумент -l полным путем .so, например вместо -ltbb
сделать /home/foo/tbb-4.3/linux/lib/intel64/gcc4.4/libtbb.so.2
В модуле DateUtils имеется ряд помощников, которые позволяют вам изолировать себя от кодирования TDateTime. Например:
uses
SysUtils, DateUtils;
....
var
DT: TDateTime;
....
DT := EncodeDate(2013, 12, 30); // Dec 30 2013 @ 12AM
DT := IncDay(DT, 10);
DT := IncHour(DT, 20);
Возможно, это немного затянуто, но я выбрал этот подход, чтобы проиллюстрировать как IncDay, так и IncHour. Я рекомендую изучить содержимое DateUtils, чтобы ознакомиться со всей его функциональностью.
Другой способ сделать это будет следующим:
DT := EncodeDateTime(2013, 12, 30, 20, 0, 0, 0); // Dec 30 2013 @ 8PM
DT := IncDay(DT, 10);
Или даже:
DT := IncDay(EncodeDateTime(2013, 12, 30, 20, 0, 0, 0), 10);