Вопросы по компиляции SAS

Форум для обсуждения деталей разработки программы SAS.Планета

Модераторы: vdemidov, Tolik

Аватара пользователя
garl
Гуру
Сообщения: 1625
Зарегистрирован: 16 июл 2008, 14:40
Откуда: Краснодар, Кубанская столица.
Благодарил (а): 97 раз
Поблагодарили: 272 раза

Re: Вопросы по компиляции SAS

Сообщение garl »

"C:\program files\Delphi_2007_Lite\lib_sas"
Russian NDN Team
QIP NightlyTester
evoro
Новичок
Сообщения: 3
Зарегистрирован: 11 мар 2013, 11:04
Благодарил (а): 1 раз

Re: Вопросы по компиляции SAS

Сообщение evoro »

Доброго дня всем!
При компиляции проекта под XE2 возникают сообщения об ошибках, связанные с библиотекой graphics32:
Ambiguous overloaded call to 'Point'
Ambiguous overloaded call to 'EqualRect'

XE2 не может понять какие функции вызывать - функцию из файла System.Types.pas или одноименные из GR32.

Комментарий(внимания недостоен, так как в синтаксисе ОбъектПаскаль я не силен)
В самих файлах, при компиляции которых возникает эта ошибка, например, в файле u_MapType в секции uses явно указывается только модуль GR32, а System.Types явно не указывается.

Подскажите, как решить эту проблему? Кроме моих кривых рук, проблема в настройках компилятора или необходимо модифицировать код с явным указанием вызова функций из файла GR32.pas для успешной компиляции под XE32? и как это сделать?
zed
Гуру
Сообщения: 2888
Зарегистрирован: 16 авг 2008, 20:21
Благодарил (а): 89 раз
Поблагодарили: 568 раз

Re: Вопросы по компиляции SAS

Сообщение zed »

evoro писал(а):Подскажите, как решить эту проблему?

Компилировать в Delphi 2007, как сказано в шапке, в которой такой проблемы нет. TPoint берётся из Types, даже без явного указания.
evoro
Новичок
Сообщения: 3
Зарегистрирован: 11 мар 2013, 11:04
Благодарил (а): 1 раз

Re: Вопросы по компиляции SAS

Сообщение evoro »

Вы меня убедили, уважаемый zed! Теперь компилирую под Delphi2007. Вроде дело с компиляцией пошло. Сейчас не могу разобраться со следующей проблемой:
[DCC Error] u_ImportConfig.pas(113): E2003 Undeclared identifier: 'GetPolyParams'

Нашел, что функция GetPolyParams декларируется в файле i_ImportConfig.pas, является членом интерфейса IImportConfig. Декларацию я нашел, но не понял, где же тело функции? Есть предположение, что само тело функции работает из какой-то dll-библиотеки. Хотя непонятно, почему тогда проблема вылазит на этапе компиляции?

Сразу возник второй вопрос (на будущие сложности): где взять dll-библиотеки, которые использует sasgis.exe(судя по составу релиза sasplanet)? их нужно самостоятельно скомпилировать из проектов под Microsoft VIsual Studio, исходники которой выложены вот здесь: https://bitbucket.org/sas_team/sas.requires или лучше использовать готовые библиотеки?
vasketsov
Специалист
Сообщения: 901
Зарегистрирован: 25 июл 2009, 21:15
Поблагодарили: 193 раза

Re: Вопросы по компиляции SAS

Сообщение vasketsov »

evoro писал(а):Сразу возник второй вопрос (на будущие сложности): где взять dll-библиотеки, которые использует sasgis.exe(судя по составу релиза sasplanet)? их нужно самостоятельно скомпилировать из проектов под Microsoft VIsual Studio, исходники которой выложены вот здесь: https://bitbucket.org/sas_team/sas.requires или лучше использовать готовые библиотеки?

А где по-вашему их берут обычные юзеры, которые за слово "скомпилировать" могут сразу по морде дать? :lol:
А кто потом по-вашему будет разгребать глюки кривых компиляций? ;)
Разумеется брать готовое.
zed
Гуру
Сообщения: 2888
Зарегистрирован: 16 авг 2008, 20:21
Благодарил (а): 89 раз
Поблагодарили: 568 раз

Re: Вопросы по компиляции SAS

Сообщение zed »

evoro писал(а):[DCC Error] u_ImportConfig.pas(113): E2003 Undeclared identifier: 'GetPolyParams'

Обновите исходники до актуального состояния. Некоторое время назад, код из репо не компилировался из-за одного кривого коммита (видимо, не все внесённые изменения в коде вошли в коммит, что было исправлено в последующих коммитах). Тело функции GetPolyParams должно было быть реализовано в u_ImportConfig.pas, потому как один из классов именно из этого юнита и занят реализацией указанного выше интерфейса.
evoro писал(а):их нужно самостоятельно скомпилировать из проектов под Microsoft VIsual Studio

Их можно самостоятельно компилировать, но лучше взять из релиза. Озаботиться самостоятельной компиляцией либ можно лишь с целью обновления их версий до актуальных, либо для линковки с кастомным рантаймом (к примеру, чтобы попробовать решить проблему с Win2000).
zed
Гуру
Сообщения: 2888
Зарегистрирован: 16 авг 2008, 20:21
Благодарил (а): 89 раз
Поблагодарили: 568 раз

Re: Вопросы по компиляции SAS

Сообщение zed »

evoro писал(а):Сразу возник второй вопрос (на будущие сложности): где взять dll-библиотеки, которые использует sasgis.exe(судя по составу релиза sasplanet)? их нужно самостоятельно скомпилировать из проектов под Microsoft VIsual Studio, исходники которой выложены вот здесь: https://bitbucket.org/sas_team/sas.requires или лучше использовать готовые библиотеки?

Кстати, ссылку вы привели не правильную. Исходники внешних либ, которые использует SAS, лежат в этом репо: https://bitbucket.org/sas_team/sas.lib.external
evoro
Новичок
Сообщения: 3
Зарегистрирован: 11 мар 2013, 11:04
Благодарил (а): 1 раз

Re: Вопросы по компиляции SAS

Сообщение evoro »

Скачал последние исходники. Программа скомпилировалась и вроде заработала. Спасибо за помощь!
p.s. Да, действительно, промахнулся с сылкой.
zed
Гуру
Сообщения: 2888
Зарегистрирован: 16 авг 2008, 20:21
Благодарил (а): 89 раз
Поблагодарили: 568 раз

Re: Вопросы по компиляции SAS

Сообщение zed »

evoro писал(а):Скачал последние исходники. Программа скомпилировалась и вроде заработала. Спасибо за помощь!

Ждём пул-реквестов :)
antarey
Новичок
Сообщения: 8
Зарегистрирован: 17 июл 2013, 12:23

Re: Вопросы по компиляции SAS

Сообщение antarey »

Народ, а есть пакаджи для ХЕ4???
Ответить

Вернуться в «Раздел для разработчиков программы SAS.Планета»