1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
| TarasBer |
8.02.2011 16:28
Сообщение
#1
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
Я поставил пакет win32ada, он создал папку include\win32ada
Если написать первой строкой test.gpr with "win32ada", то среда ругается при открытии пакета: [2011-02-08 16:25:57] C:\Program Files\ADA\projects\TEST\test.gpr:1:06: unknown project file: "win32ada" [2011-02-08 16:25:57] Error while loading project 'C:\Program Files\ADA\projects\TEST\test.gpr'. Loading the default project. Ну я это убрал. Добавил в test.gpr строчку for Source_Dirs use ("..\..\include\win32ada\**"); Пишу в test.adb with win32.winuser (вроде все основные функции, типа окно нарисовать итд, там). Компилирую. gnatlink "C:\Program Files\ADA\projects\TEST\test.ali" -shared-libgcc -g -g -fprofile-generate -o "C:\Program Files\ADA\projects\TEST\test.exe" c:/program files/ada/bin/../libexec/gcc/i686-pc-mingw32/4.3.6/ld.exe: cannot find -lwin32ada collect2: ld returned 1 exit status gnatlink: error when calling C:\Program Files\ADA\bin\gcc.exe gnatmake: *** link failed. [2011-02-08 16:28:19] process exited with status 4 (elapsed time: 06.26s) Что делать? -------------------- |
![]() ![]() |
| volvo |
10.03.2011 18:19
Сообщение
#2
|
|
Гость |
Цитата А как выкручиваться-то? Ты ж выкрутился. Зачем тебе выносить эту функцию в параметры шаблона, расскажи? Как ты ее описывать собрался? Вот просто пример приведи, неважно, пускай некомпилируемый, как ты хочешь чтоб это работало...Цитата Ещё компилятор выдаёт предупреждение, если Initialize-Finalize-Adjust находятся в private -части ads файла. Что определение этой процедуры перекрывает определение на линии, где я объявил тип. Насколько я помню, так себя ведет только GNAT, по этому поводу даже есть открытый баг в бегтрекере. Aonix ObjectAda не вякает по этому поводу. Тут есть 2 замечания: во-первых, если ты создаешь новый тип, первый в иерархии (то есть, наследуешься от Ada.Finalization.Controlled, а не от его потомка), то всегда добавляй перед прототипом описатель overriding. Во-первых, это поможет поймать опечатки, по-вторых, ты ясно указываешь компилятору, что тебе не надо перегружать функции, а надо именно заменить. И тогда предупреждение можно отключатьВо-вторых, чего не указываешь, что type Parsed_Function is tagged private; ? Он же теговый, поскольку наследуется от Controlled, который сам по себе теговый. Не, я понимаю, что компилятор сам это добавит (как и virtual в С++, если ты забыл случайно описать функцию как виртуальную в наследнике, когда у предка эта функция уже была виртуальна), но все-таки лучше делать это программисту, с первого взгляда должно быть видно, что за тип, в твоем случае этого не видно. А вообще эта проблема (предупреждения при описании этих трех процедур в приватной части) растет вот отсюда: если у тебя есть нетэговый тип, то может быть вот такая заморочка (пример приводил Adam Beneschan) package Pack2 isТеперь в зависимости от того, где будет вызываться T2.Op (в смысле, видима ли там приватная часть модуля Pack2 или нет) под P2.Op может подразумеваться разная функциональность. Где-то унаследованная от T1.Op, где-то - переопределенная. Возможно поэтому компилятор при попытке описания функционала для потомков в приватной части (которая может быть не для всех видимой) ругается Warning-ами, не обращая особого внимания на то, где описан сам тип. Но это в любом случае баг. |
TarasBer Заголовки Windows, Ada 8.02.2011 16:28
volvo Вот на это я бы вообще не закладывался, некоторые ... 8.02.2011 17:07
TarasBer > У тебя что, нет этого файла?
Файл есть.
Если... 8.02.2011 17:17
volvo Попробуй создать новый проект, и когда он будет со... 8.02.2011 17:33
TarasBer > Если в появившемся списке известных проектов ... 8.02.2011 17:51
TarasBer Снес ГНАТ, переставил всё.
Если прямо из среды доп... 10.02.2011 14:29
volvo Хм... Как вариант попробуй в зависимостях добавить... 10.02.2011 15:31
TarasBer > А потом попробуй закрыть среду, и посмотреть ... 10.02.2011 16:02
TarasBer > А по проводу ошибки линкера - в проектах, исп... 11.02.2011 13:02
volvo Странно. Значит, я не оттуда брал тот тестовый при... 11.02.2011 14:13
TarasBer Программу я скомпилировал.
Но окно белое.
Новый во... 14.02.2011 11:22
volvo function To_HBRUSH is new Ada.Unchecked_Convers... 14.02.2011 13:05
TarasBer Вопрос: в каком модуле описаны константы wmsz_TopL... 21.02.2011 12:25
TarasBer WM_SIZING тоже куда дели? 21.02.2011 13:11
volvo Не описаны они вообще. Кому надо - тот открывает M... 21.02.2011 13:12
TarasBer > Не описаны они вообще. Кому надо - тот открыв... 21.02.2011 13:24
volvo А просто ради интереса проверь, вот такое будет ко... 21.02.2011 13:45
TarasBer Unchecked_Access скомпилировался и заработал, спас... 21.02.2011 14:48
TarasBer Я таки не понял, что происходит с исключениями вну... 25.02.2011 13:49
volvo Хм. Извини, а с каких пор исключение может покидат... 25.02.2011 16:44
Гость > Хм. Извини, а с каких пор исключение может по... 25.02.2011 17:11
volvo Вот с этого самого и не должно.
Если в Дельфи иск... 25.02.2011 18:41
volvo Значит, смотри. Пользуемся возможностями Ады:
Пак... 25.02.2011 20:43
TarasBer В общем я тут сделал первую оконную программу на А... 5.03.2011 12:02
volvo Ввели все типы, которые описаны в "Interfaces... 5.03.2011 16:13
TarasBer > С точки зрения англоязычного программиста как... 5.03.2011 16:26
volvo При линковке добавил -s:
gnatlink F:\Program... 5.03.2011 18:07
-TarasBer- > Кстати, откомпилировал твой проект со всеми W... 5.03.2011 18:26
volvo Посмотрю, что можно еще сделать... 5.03.2011 19:21
TarasBer В общем, включил я ВСЕ предупреждения.
И выключил.... 9.03.2011 10:02
volvo Нет, он предлагает тебе либо убрать параметр из за... 9.03.2011 14:09
TarasBer > Нет, он предлагает тебе либо убрать параметр ... 9.03.2011 14:41
volvo Угу. Значит, включай все, кроме "Floating Poi... 9.03.2011 16:11
TarasBer > Проблема не в этом. Проблема - в том, что теб... 10.03.2011 12:48
TarasBer > Ты ж выкрутился.
Круто, теперь у моего разбо... 11.03.2011 10:30
volvo Так не пойдет. Максимум, что можно предложить:
gen... 11.03.2011 11:56
TarasBer 1. От предупреждений я, вроде как, избавился. Прав... 17.03.2011 15:21
volvo От этого предупреждения нельзя избавляться ни в ко... 18.03.2011 12:40
-TarasBer- > Так что тебе надо либо включать pragma No_Str... 18.03.2011 19:32
volvo Да. Если это нежелательно - то сделай то, что сам ... 18.03.2011 23:35
Ахмед есть кто умеет писать на Аде?!! помогите, ... 28.05.2012 19:58
IUnknown Задание нормально поставь. Какой тип элементов мас... 28.05.2012 20:37![]() ![]() |
|
Текстовая версия | 15.12.2025 21:45 |