Не находит ptcGraph

Форум для изучающих FPC и их учителей.

Модератор: Модераторы

koris
незнакомец
Сообщения: 7
Зарегистрирован: 21.12.2014 23:21:42

Не находит ptcGraph

Сообщение koris »

Изучаю Паскаль, застрял на графике. Пересмотрел эту тему http://www.freepascal.ru/article/freepa ... 215095658/ все сделал как пишет, создал ссылки на файл libXxf86vm.so и libXxf86dga.со но при компиляции пишет, что не может найти ptcGraph. Может кто-то поможет? У меня Debian 7 , fpc-2.6.0.
Аватара пользователя
Дож
энтузиаст
Сообщения: 900
Зарегистрирован: 12.10.2008 16:14:47

Сообщение Дож »

Модуль должен лежать в <путь до паскаля>/2.6.0/units/x86_64-linux/graph, проверьте наличие его там (в виде .ppu и .o), если есть, то попытайтесь компилировать с опцией
-Fu<путь до паскаля>/2.6.0/units/x86_64-linux/graph
koris
незнакомец
Сообщения: 7
Зарегистрирован: 21.12.2014 23:21:42

Сообщение koris »

Спасибо! Все заработало :) компилировал в консоли, хотелось бы что-бы и в ide компилировалось но это лучшем чем ничего!
Аватара пользователя
Дож
энтузиаст
Сообщения: 900
Зарегистрирован: 12.10.2008 16:14:47

Сообщение Дож »

Проверьте пути в используемом fpc.cfg
koris
незнакомец
Сообщения: 7
Зарегистрирован: 21.12.2014 23:21:42

Сообщение koris »

не сильно в этом разбираюсь, посмотрел файл fpc.cfg и пути -Fu/usr/lib/fpc/2.6.0/units/i386-linux/graph в нем не нашел, добавление этой строки ничего не дало. есть строки
# searchpath for libraries
#-Fl/usr/lib/fpc/$fpcversion/lib
#-Fl/lib;/usr/lib
как я понял они закомментированы, раскомментировал две нижние но проблема осталась, вернул все на место, там много всего написано, с английским у меня не очень но searchpath for libraries кажется путь к библиотекам

в /etc есть fpc-2.6.0.cfg , fpc.cfg.save и fpc.cfg линк на etc/alternatives/fpc.cfg
Аватара пользователя
Дож
энтузиаст
Сообщения: 900
Зарегистрирован: 12.10.2008 16:14:47

Сообщение Дож »

Нужно смотреть опции -Fu

Главное понять какой файл использует IDE и в нём прописать -Fu как выше. Может быть, это возможно сделать через саму IDE (нужна настройка unit path или что-то в таком духе).
koris
незнакомец
Сообщения: 7
Зарегистрирован: 21.12.2014 23:21:42

Сообщение koris »

методом проб прописал -Fu/usr/lib/fpc/2.6.0/units/i386-linux/graph в fpc-2.6.0.cfg , fpc.cfg.save и fpc.cfg ,даже в etc/alternatives/fpc.cfg :

# searchpath for units and other system dependent things
-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget
-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/*
-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/rtl
-Fu/usr/lib/fpc/2.6.0/units/i386-linux/graph

ничего не изменилось, пробовал в самой ide добавить. Все что нашел это options>directories>units туда прописал /usr/lib/fpc/2.6.0/units/i386-linux/graph, пробовал и с -Fu и без него , даже рядом в libraries - ничего не дало.

http://wiki.freepascal.org/Unit_not_fou ... find_units немного прочитал здесь пишут, кажется то что мне надо
Case 2: Compiler finds a unit, but IDE does not

The next sub cases assumes, that Run -> Build (Ctrl+F9) in the Lazarus IDE works, but Find Declaration fails with the error: unit not found. If unsure, check Case 1 as well.

Check if the unit source exists: The IDE searches for pascal source (.pas, .pp) and ignores the .ppu files. The compiler can use a .ppu, but the Lazarus IDE not. This feature is planned, but there is no time frame.
Check if unit directory was added to your fpc.cfg: The compiler uses all paths defined in the fpc.cfg file. The IDE does not read this file. Add the search path to the compiler options of your projects and/or packages.
Check for macros and special compiler flags: The compiler understands the asterisk * character in search paths. The IDE treats this character as normal character. You can add the -Fu, -FU, -FE flags manually to the custom compiler flags in the lazarus IDE, but they are not parsed. Always use the right fields for options. The custom options are only for flags like the -D flag or uncommon compiler options, like new features of the unstable developer compiler.
Rescan the FPC source directory: sometimes after a new/fresh install the IDE has problems finding the FPC sources. Selecting this option from the main menu (Environment/Rescan the FPC directory) might fix the problem.

не могу понять куда мне еще прописать этот путь.
Аватара пользователя
Дож
энтузиаст
Сообщения: 900
Зарегистрирован: 12.10.2008 16:14:47

Сообщение Дож »

А, ну да, тут пишут, что в IDE это пока не поддерживается.

Во флаги компиляции прописывали?
You can add the -Fu, -FU, -FE flags manually to the custom compiler flags in the lazarus IDE
koris
незнакомец
Сообщения: 7
Зарегистрирован: 21.12.2014 23:21:42

Сообщение koris »

не знаю как это сделать, вставляю -Fu при компиляции в консоли, немного неудобно но если не поддерживается в IDE что тут поделаешь, спасибо за помощь!
Аватара пользователя
Дож
энтузиаст
Сообщения: 900
Зарегистрирован: 12.10.2008 16:14:47

Сообщение Дож »

не знаю как это сделать, вставляю -Fu при компиляции в консоли, немного неудобно но если не поддерживается в IDE что тут поделаешь, спасибо за помощь!

У меня тоже плохо с английским и с IDE (сам не использую IDE), но кажется, что тут можно придумать какое-то решение, может кто-нибудь более опытный подскажет.
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

Например, составить командный файл с нужными путями и компилировать им.
Однако лучше всего выяснить, где же всё-таки косяки с файлом конфигурации (*.cfg который), т.к. компилятор все модули и нужные библиотеки находит по путям там указанным. Это единственный нормальный выход.
Аватара пользователя
Дож
энтузиаст
Сообщения: 900
Зарегистрирован: 12.10.2008 16:14:47

Сообщение Дож »

Vadim писал(а):Например, составить командный файл с нужными путями и компилировать им.
Однако лучше всего выяснить, где же всё-таки косяки с файлом конфигурации (*.cfg который), т.к. компилятор все модули и нужные библиотеки находит по путям там указанным. Это единственный нормальный выход.


Проблема не с компилятором, а с IDE. Там выше есть ссылка, где говорится, что у IDE есть проблемы с поиском ppu файлов и сложности с прописыванием путей.
pupsik
энтузиаст
Сообщения: 1154
Зарегистрирован: 20.08.2014 16:20:13
Контактная информация:

Сообщение pupsik »

Верните в прежнее состояние конфиги фпс :twisted:

1. сорцы не там...
2. вы указали папку с *.o, *.ppu.
3. В параметрах проекта
другие модули укажите /usr/share/fpcsrc/2.6.4/packages/graph/src/ptcgraph
включаемые файлы укажите /usr/share/fpcsrc/2.6.4/packages/graph/src/inc
4. убрать $IFDEF UseCThreads...
5. Запустить :)

поправку на версию фпс у вас...

п.с.
В лазаре 1.3 фпс 2.7.1 нашлось сразу...
Дебиан, лазарь 1.3, фпс 2.7.1 и 2.6.4
koris
незнакомец
Сообщения: 7
Зарегистрирован: 21.12.2014 23:21:42

Сообщение koris »

Конфиги вернул обратно) если я правильно понял "В параметрах проекта другие модули укажите /usr/share/fpcsrc/2.6.4/packages/graph/src/ptcgraph " это в ide > options > directories > units прописать /usr/share/fpcsrc/2.6.0/packages/graph/src/ptcgraph ,а рядом в include files > /usr/share/fpcsrc/2.6.0/packages/graph/src/inc ? и еще по поводу "$IFDEF UseCThreads" что-то похожее видел в fpc.cfg, только посмотрев весь файл не нашел такой строки.
pupsik
энтузиаст
Сообщения: 1154
Зарегистрирован: 20.08.2014 16:20:13
Контактная информация:

Сообщение pupsik »

опция ($IFDEF UseCThreads) находится в исходном коде....

п.с.
пока вам в fpc.cfg делать нечего :) Все настраивается в проекте...
Вложения
вро так...
вро так...
Ответить