![]() |
|
Модераторы: bsa |
![]()
|
|
| MaKeGoRR |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 28.8.2013 Репутация: нет Всего: нет |
Как в Borland C++ привязать к проекту файл temp.asm
Почему в файле prim.cpp на строке prim(); это вызов функции асма выдает ошибку undefined simbol _prim in module primc.cpp Кто то писал, что надо назвать функцию с (черточкой)_ Но бесполезно, назовешь с _(одной чертой), выдаст ошибку, что не нашел с __(двумя чертами) Кто то писал, как подключен prim.asm? Никак, он и так видит файл асма, потому что создает prim.obj просто функцию объявляешь так:
prim.cpp
prim.asm
Это сообщение отредактировал(а) MaKeGoRR - 13.1.2014, 10:33 |
||||||
|
|||||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
MaKeGoRR, а как ты привязываешь?
|
|||
|
||||
| MaKeGoRR |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 28.8.2013 Репутация: нет Всего: нет |
Читайте, выше я добавил Я не знаю как, в книге почему то ничего не написано про подключение файла асма Наверно нужно как то подключить, но я не знаю как Это сообщение отредактировал(а) MaKeGoRR - 13.1.2014, 10:36 |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
MaKeGoRR, во-первых, prim.obj создается из prim.cpp. Во-вторых, для сборки экзешника тебе необходимо создать ПРОЕКТ и добавить в него твои cpp и asm файлы. В-третьих, чтобы проблем не было, дай разные имена файлам. Так как объектные файлы у них будут одинаковыми и перетрут друг друга. В-четвертых, если у тебя только одна функция, то можно написать так: extern "C" void prim (void); В-пятых, если будут проблемы с ненахождением функции prim, попробуй в ассемблерном файле добавлять подчеркивания перед именем функции.
|
|||
|
||||
| MaKeGoRR |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 28.8.2013 Репутация: нет Всего: нет |
проект у меня и был создан, у меня .obj с разными именами, подчеркивание в асм файле ничего не меняет почему ищется функция в файле .cpp, а не .asm? Это сообщение отредактировал(а) MaKeGoRR - 13.1.2014, 11:38 |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
с какими? prim.cpp и prim.asm превратятся в prim.obj. Или у тебя другие имена?
линкер не работает ни с asm, ни с cpp. Он работает с obj. Чтобы получился экзешник необходимо, чтобы во всех объектных файлах были функции, на которые в них есть ссылки. Судя по всему, у тебя объектный файл от ассемблерного исходника не попадает линкеру. Или ты не создал проект, и/или не добавил в него ассемблерный файл (меню Project). На самом деле, сборка программы идет следующим образом: //компиляция 1.cpp -> asm -> 1.obj 2.c -> asm -> 2.obj 3.pas -> asm -> 3.obj 4.asm -> 4.obj ... //линковка 1.obj 2.obj 3.obj 4.obj ... some.lib other.lib ... -> prog.exe |
|||
|
||||
| MaKeGoRR |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 28.8.2013 Репутация: нет Всего: нет |
добавил узел к проекту файл асм(через проект не знаю как)
пишет undefined simbol _A in module primm.asm Почучается ошибка в коде, буду пробывать искать ВСЕ, заработало, убрал primm.obj, который вручную создавал через тасм, теперь primm.obj создал Borland C++ и все стало норм, кстате почему, если сделать .obj через TASM, то выдает ошибку: undefined simbol _A in module primm.asm Это сообщение отредактировал(а) MaKeGoRR - 13.1.2014, 12:53 |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
возможно, из-за разных параметров. Так как в обоих случаях запускается tasm.
|
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |