libgd для windows как?

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

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

libgd для windows как?

Сообщение zmey » 11.12.2009 17:57:30

Понимаю, что дурак, но объясните, плиз. Под freebsd никаких проблем, libgd из портов установлена, gdtest.pp из примеров fpc компилируется.
Как и куда класть скачанную руками libgd под виндой, чтобы fpc нашел библиотеку, а не ругался:

Код: Выделить всё
C:\work>fpc gdtest.pp
Free Pascal Compiler version 2.2.4 [2009/04/10] for i386
Copyright (c) 1993-2008 by Florian Klaempfl
Target OS: Win32 for i386
Compiling gdtest.pp
gdtest.pp(6,3) Note: Local variable "black" is assigned but never used
gdtest.pp(13,3) Note: Local variable "s2" not used
gdtest.pp(14,3) Note: Local variable "points" not used
gdtest.pp(16,3) Note: Local variable "styleDotted" is assigned but never used
Linking gdtest.exe
gdtest.pp(78,1) Error: Import library not found for c
gdtest.pp(78,1) Error: Import library not found for m
gdtest.pp(78,1) Error: Import library not found for png
gdtest.pp(78,1) Error: Import library not found for gd
gdtest.pp(78,1) Error: Undefined symbol: _gdFontLarge
gdtest.pp(78,1) Fatal: There were 5 errors compiling module, stopping
Fatal: Compilation aborted
Error: C:\FPC\2.2.4\bin\i386-Win32\ppc386.exe returned an error exitcode (normal if you did not specify a source file to be compiled)
zmey
незнакомец
 
Сообщения: 4
Зарегистрирован: 11.12.2009 17:43:18

Re: libgd для windows как?

Сообщение AbakAngelSoft » 11.12.2009 18:03:44

Где скачал? Тоже очень нужно!
А класть либо рядом с проектом, либо там куда его собираешь, либо в system32
Аватара пользователя
AbakAngelSoft
постоялец
 
Сообщения: 273
Зарегистрирован: 06.08.2008 19:28:26
Откуда: Краснодар

Re: libgd для windows как?

Сообщение zmey » 11.12.2009 18:07:39

AbakAngelSoft писал(а):Где скачал? Тоже очень нужно!
А класть либо рядом с проектом, либо там куда его собираешь, либо в system32


Взял тут: http://www.libgd.org/releases/gd-latest-win32.zip. В архиве, все честно /bin /include /lib, только как компилячить не понимаю.
Выложил все это барахло в с:\tools\libgd и хлопаю глазками. -Flс:\tools\libgd\lib успеха не принесло
zmey
незнакомец
 
Сообщения: 4
Зарегистрирован: 11.12.2009 17:43:18

Re: libgd для windows как?

Сообщение AbakAngelSoft » 11.12.2009 18:18:19

Я этот архив тоже скачивал, вроде бы нужно использовать bgd.dll но как это делать не ясно :(
Аватара пользователя
AbakAngelSoft
постоялец
 
Сообщения: 273
Зарегистрирован: 06.08.2008 19:28:26
Откуда: Краснодар

Re: libgd для windows как?

Сообщение Verx0Laz » 11.12.2009 23:06:22

Не знаю, насколько поможет, но вот:
http://old.nabble.com/using-bgd.dll-on- ... 06087.html
http://forum.codenet.ru/archive/index.php/t-52002.html
Статьи для сишников, но, думаю, перевести на лазарь особого труда не составит. Сам в сях не спец, но на этом форуме есть те, кто сможет... если захочет, конечно :)
Аватара пользователя
Verx0Laz
постоялец
 
Сообщения: 125
Зарегистрирован: 11.09.2007 11:24:07

Re: libgd для windows как?

Сообщение Mr.Smart » 12.12.2009 00:25:10

Verx0Laz
Не ну конечно перевести можно. Вот только интересно для чего эта библиотека?
з.ы. Лень читать. Сёдня пятница как ни как :oops:
Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: libgd для windows как?

Сообщение Verx0Laz » 12.12.2009 12:27:53

Mr.Smart писал(а):Verx0Laz
Не ну конечно перевести можно. Вот только интересно для чего эта библиотека?
з.ы. Лень читать. Сёдня пятница как ни как :oops:

Я и сам не знаю :oops:
Заметил, что у парней интерес к этой библиотека, и вся загвоздка - в использовании bgd.dll
После напряг поисковик и нашел англоязычные статьи, где, судя по структуре, довольно подробно расписаны экспорт и использование функций из этой ДЛЛки.
А теперь пусть парни сами чуток поработают - опишут, что это и зачем, если конечно им это действительно надо.
Аватара пользователя
Verx0Laz
постоялец
 
Сообщения: 125
Зарегистрирован: 11.09.2007 11:24:07

Re: libgd для windows как?

Сообщение giao » 13.12.2009 00:05:56

Понимаю, что дурак, но объясните, плиз. Под freebsd никаких проблем, libgd из портов установлена, gdtest.pp из примеров fpc компилируется.
Как и куда класть скачанную руками libgd под виндой, чтобы fpc нашел библиотеку, а не ругался:

а почему в компиляторе в опциях (libraries) не указать путь к нужной dll?
giao
новенький
 
Сообщения: 46
Зарегистрирован: 24.11.2009 22:33:18
Откуда: Украина

Re: libgd для windows как?

Сообщение zmey » 13.12.2009 00:46:11

giao писал(а):а почему в компиляторе в опциях (libraries) не указать путь к нужной dll?


Уже перепробовал массу вариантов (результат всегда один, под виндой не линкуется). Среди них есть даже такой:
Код: Выделить всё
C:\work>fpc -FiC:\FPC\2.2.4\libgd\include -FlC:\FPC\2.2.4\libgd\lib;C:\FPC\2.2.4\libgd\lib -FuC:\FPC\2.2.4\libgd\bin;C:\FPC\2.2.4\libgd\lib -FoC:\FPC\2.2.4\libgd\lib;C:\FPC\2.2.4\libgd\bin
Free Pascal Compiler version 2.2.4 [2009/04/10] for i386
Copyright (c) 1993-2008 by Florian Klaempfl
Fatal: No source file name in command line
Fatal: Compilation aborted
Error: C:\FPC\2.2.4\bin\i386-Win32\ppc386.exe returned an error exitcode (normal if you did not specify a source file to be compiled)

C:\work>fpc -FiC:\FPC\2.2.4\libgd\include -FlC:\FPC\2.2.4\libgd\lib -FuC:\FPC\2.2.4\libgd\bin;C:\FPC\2.2.4\libgd\lib -FoC:\FPC\2.2.4\libgd\lib;C:\FPC\2.2.4\libgd\bin gdtest.pp
Free Pascal Compiler version 2.2.4 [2009/04/10] for i386
Copyright (c) 1993-2008 by Florian Klaempfl
Target OS: Win32 for i386
Compiling gdtest.pp
gdtest.pp(6,3) Note: Local variable "black" is assigned but never used
gdtest.pp(13,3) Note: Local variable "s2" not used
gdtest.pp(14,3) Note: Local variable "points" not used
gdtest.pp(16,3) Note: Local variable "styleDotted" is assigned but never used
Linking gdtest.exe
gdtest.pp(78,1) Error: Import library not found for c
gdtest.pp(78,1) Error: Import library not found for m
gdtest.pp(78,1) Error: Import library not found for png
gdtest.pp(78,1) Error: Import library not found for gd
gdtest.pp(78,1) Error: Undefined symbol: _gdFontLarge
gdtest.pp(78,1) Fatal: There were 5 errors compiling module, stopping
Fatal: Compilation aborted
Error: C:\FPC\2.2.4\bin\i386-Win32\ppc386.exe returned an error exitcode (normal if you did not specify a source file to be compiled)


Под FreeBSD собирается на ура:
Код: Выделить всё
[zmey@nightfall] /work/prg/arrvision_cli> fpc gdtest.pp
Free Pascal Compiler version 2.2.4 [2009/10/25] for i386
Copyright (c) 1993-2008 by Florian Klaempfl
Target OS: FreeBSD/ELF for i386
Compiling gdtest.pp
gdtest.pp(6,3) Note: Local variable "black" is assigned but never used
gdtest.pp(13,3) Note: Local variable "s2" not used
gdtest.pp(14,3) Note: Local variable "points" not used
gdtest.pp(16,3) Note: Local variable "styleDotted" is assigned but never used
Linking gdtest
78 lines compiled, 1.3 sec
4 note(s) issued
[zmey@nightfall] /work/prg/arrvision_cli>
zmey
незнакомец
 
Сообщения: 4
Зарегистрирован: 11.12.2009 17:43:18

Re: libgd для windows как?

Сообщение Verx0Laz » 13.12.2009 04:21:10

Змей, ты меня извини, но что-то уж слишком сложно ты мыслишь.... наверняка всё намного проще. Думай...
Аватара пользователя
Verx0Laz
постоялец
 
Сообщения: 125
Зарегистрирован: 11.09.2007 11:24:07

Re: libgd для windows как?

Сообщение Sergei I. Gorelkin » 13.12.2009 09:53:38

Я, если честно, не понимаю, как можно таких проблем на ровном месте нахватать.

У меня gdtest.pp под виндой собирается командой fpc gdtest.pp безо всяких дополнительных ключей вообще. И даже не скачивая архив с библиотекой.
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
 
Сообщения: 1405
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Re: libgd для windows как?

Сообщение AbakAngelSoft » 13.12.2009 15:35:13

gd бесплатная кроссплатформенная библиотека для быстрой работы с форматами изображений для web. Позволяет на лету создавать png с alpha каналом и прочие вкусности не копаясь в ассемблере и форматах файлов.
Сегодня вечером попробую откомпилировать gdtest.pp. Не подозревал о его существовании. :(
Аватара пользователя
AbakAngelSoft
постоялец
 
Сообщения: 273
Зарегистрирован: 06.08.2008 19:28:26
Откуда: Краснодар

Re: libgd для windows как?

Сообщение zmey » 13.12.2009 20:01:54

Sergei I. Gorelkin писал(а):Я, если честно, не понимаю, как можно таких проблем на ровном месте нахватать.

У меня gdtest.pp под виндой собирается командой fpc gdtest.pp безо всяких дополнительных ключей вообще. И даже не скачивая архив с библиотекой.


И я не понимаю. Винда сежеустановленная в виртуалке. FPC тоже свежескаченный. Результат все тот же.

Добавлено спустя 1 минуту 5 секунд:
Verx0Laz писал(а):Змей, ты меня извини, но что-то уж слишком сложно ты мыслишь.... наверняка всё намного проще. Думай...


Куда уж проще-то? :)

Добавлено спустя 6 минут 40 секунд:
AbakAngelSoft писал(а):Сегодня вечером попробую откомпилировать gdtest.pp. Не подозревал о его существовании. :(


Надеюсь и уповаю. Либо рассказывайте, как в паскале принято работать с png и gif'ами. Цель создавать за раз пару сотен файлов с простейшими рисунками вида: прямоугольники, бэкграунд градиент, рамочки по периметру, в центре текст.
zmey
незнакомец
 
Сообщения: 4
Зарегистрирован: 11.12.2009 17:43:18

Re: libgd для windows как?

Сообщение AbakAngelSoft » 14.12.2009 11:27:48

При компиляции gdtest та же самая проблема. :(
Решение: перенести и положить рядом с ней копию gd.pp. Исправить gd.pp (обрамить директивами условной компиляции статическую линковку указанных библиотек).
Приложение собирается, но работать отказывается категорически. Если положить рядом bgd.dll, скачанную с официального сайта gd, при запуске говорит что библиотека gd.dll не найдена (что естественно). Если переименовать в gd.dll, то сообщает что не найдена точка входа в процедуру...

Sergei I. Gorelkin
Какая у Вас версия лазаря и fpc? Нет ли у Вас в системе файла gd.dll установленного вместе с каким либо графическим пакетом? Если есть что это за пакет или приложение?
Аватара пользователя
AbakAngelSoft
постоялец
 
Сообщения: 273
Зарегистрирован: 06.08.2008 19:28:26
Откуда: Краснодар

Re: libgd для windows как?

Сообщение Sergei I. Gorelkin » 14.12.2009 12:44:28

У меня все из svn, обновление почти ежедневное :)
Там уже исправлены имена библиотек, так что оно линкуется к вроде бы правильным bgd.dll и msvcrt.dll, вместо линуксовых gd и libc.

gd.dll в системе нет, без bgd.dll приложение не запускается (что ожидаемо).
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
 
Сообщения: 1405
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

След.

Вернуться в Обучение Free Pascal

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4

Рейтинг@Mail.ru