IPB
ЛогинПароль:

 
 Ответить  Открыть новую тему 
> {$includepath} {$unitpath}, fpc2.0.0
сообщение
Сообщение #1


Знаток
****

Группа: Пользователи
Сообщений: 419
Пол: Мужской

Репутация: -  6  +



//
// AggPas 2.3 RM1 Demo application
// Note: Press F1 key on run to see more info about this demo
//

{$UNITPATH d:/work/coding/game/temp/aggpas/AggPas23-rm1/src;
d:/work/coding/game/temp/aggpas/AggPas23-rm1/src/platform/win;
d:/work/coding/game/temp/aggpas/AggPas23-rm1/src/ctrl;
d:/work/coding/game/temp/aggpas/AggPas23-rm1/src/util}
{$INCLUDEPATH d:/work/coding/game/temp/aggpas/AggPas23-rm1/src}
{$MODE DELPHI}
program aa_demo ;

uses
agg_basics ,
agg_platform_support ,
agg_math ,

agg_color ,
agg_pixfmt ,
agg_pixfmt_rgb ,

agg_ctrl ,
agg_slider_ctrl ,
agg_cbox_ctrl ,

agg_renderer_base ,
.........................

{$I agg_mode.inc }



все модули в исходах ,раскиданы по папкам из unitpath ,не компилируется не может найти эти модули. Если {$INCLUDEPATH} И {$UNITPATH} закомментировать а пути добавить в options/directories/units(include) то все нормально компилится.
{$INCLUDEPATH d:/work}
{$UNITPATH d:/work}
program te;
uses test1;
{$I test.inc}

begin

end.


test1.pas::
unit tt;

interface

const n = 2;

inplementation

end.


test.inc ::
const m = 1;
test.inc находит ,а test1.pas нет.
У кого стоит 2.0.0 ,2.0.2 и 2.0.3 посмотрите пожалуйста.

И еще можно ли с помощью {$INCLUDEPATH} или подобного в основном файле заставить компилер искать инклуды для всех подключенных модулей в тех путях?


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






virt, а и не должен компилятор находить test1.pas...

У тебя в нем ошибки, он не компилируется, следовательно, PPU не находится. Исправь его вот так:
unit test1; // <--- Вместо TT

interface

const n = 2;

implementation // <--- Вместо iNplementation

end.
тогда FPC 2.0.0 находит и unit и include...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Знаток
****

Группа: Пользователи
Сообщений: 419
Пол: Мужской

Репутация: -  6  +


d:\work\coding\game\temp\aggpas\AggPas23-rm1\te.pas::
 {$INCLUDEPATH d:\work}
{$UNITPATH d:\work}
program test;
uses test1;
{$I test.inc}

begin

end.


d:\work\test1.pas::
 unit test1;

interface

const n = 2;

implementation

end.


d:\work\test.inc::
 const m = 1;



Вот все файлы ,fpc2.0.2 тоже не может найти test1.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Так... Ясно. У меня компилировалось только потому, что копия файла test1.pas была в текущем каталоге... Как только ее удалил - скомпилировать удалось ТОЛЬКО тогда, когда определил пути относительно:
{$INCLUDEPATH ../../../Buffer/T} { <- аналогично F:/Buffer/T}
{$OBJECTPATH ../../../Buffer/T}
{$UNITPATH ../../../Buffer/T}
program te;
uses test1;

{$I test.inc}
begin

end.
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 




- Текстовая версия 18.12.2017 20:00
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"