![]() |
|
Модераторы: volvo877, Snowy, MetalFan |
![]()
|
|
| Fighter |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 810 Регистрация: 5.1.2005 Репутация: нет Всего: 2 |
Подскажите в чем дело?
Я на Turbo C++ написал модуль без функции main. В этом модуле было 2 функции. Я поставил этот модуль только на компилирование (выбирал из меню пункт Compile). Была компиляция без линковки. И вот для этого файла компилятор создал объектный файл. И мне теперь надо было использовать эти подпрограммы в Паскале. Я для этого скопировал obj файл в объектную папку (Options/Directories/Objects Directories). И стал подключать этот файл с помощью директивы {L} Я написал что-то вроде.
И в том месте где я подключаю он выводит ошибку. Что мне делать? |
|||
|
||||
| Zero |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2169 Регистрация: 23.10.2004 Где: Россия, г. Рязань Репутация: нет Всего: 24 |
Fighter Где ты видел, что директивы и комментарии ─ одно и тоже... Директива в паскале делается так:
Короче символ $ поставь после скобки коментария {, тогда компилятор будет воспринимать коментарий как директиву. Ещё можешь почитать справку об том как её правильно использовать, для этого поставь курсор на текст кода и нажми <CTRL>+<F1> |
||||
|
|||||
| Fighter |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 810 Регистрация: 5.1.2005 Репутация: нет Всего: 2 |
Так в книге по турбо паскалю (Фаронов) там так и написано
{$L <имя файла>}. |
|||
|
||||
| Zero |
|
||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2169 Регистрация: 23.10.2004 Где: Россия, г. Рязань Репутация: нет Всего: 24 |
Нуууу... А ты то как написал???? У тебя вот так:
А надо так:
Даже тут на цвет подсветки обрати внимание, у тебя коментарий, а у меня обозначение директивы. |
||||||
|
|||||||
| volvo877 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2073 Регистрация: 15.11.2004 Репутация: 2 Всего: 116 |
Привести сообщение об ошибке. Ну, подключил ты OBJ файл, только пока ты не описал процедуры/функции, находящиеся в OBJ-файле как External (внешние), компилятор Паскаля о них не имеет никакого понятия, а должен-то знать именно компилятор!!! С {$L ...} работает Linker, он подключает OBJ в последний момент... |
|||
|
||||
| Fighter |
|
||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 810 Регистрация: 5.1.2005 Репутация: нет Всего: 2 |
Ну хорошо, вот текст TryLib.cpp написанный на Turbo C++ и откомпилированный (не линкованный)
Теперь, вот я пишу программу на паскале
Теперь в месте
Он выдает ошибку Error 47: Invalid object file record (C:\Program1\Tp\Objects\TryLib.obj). Что делать!!!?!??! |
||||||
|
|||||||
| Romtek |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 153 Регистрация: 7.12.2004 Где: Холон Репутация: нет Всего: 4 |
По-моему нельзя импортировать объектные файлы из С++ в Паскаль.
Из С по идее можно. How to Link Turbo C Files into Turbo Pascal Using C And Pascal - Link Это сообщение отредактировал(а) Romtek - 28.10.2005, 02:06 --------------------
Romiras HomeLab - материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и пр. |
|||
|
||||
![]()
|
| Правила форума "Delphi" | |
|
|
Запрещается! 1. Обсуждать и делится взломанными компонентами или программным обеспечением 2. Публиковать ссылки на варез 3. Оффтопить
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |