![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Fedor |
|
|||
![]() Днепрянин ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2090 Регистрация: 8.2.2003 Где: Великий Репутация: нет Всего: 32 |
В общем, есть какой-то минимальный asm-модуль. Пусть он просто выводит на экран строку. Например:
Макрос prints определен в macros.asm и просто выводит строку на экран. Но это не суть важно. Тасмом делаем из этого файла obj. Как мне теперь использовать процедуру pppp в СPP, как подключить этот obj-файл? Я пытался как библиотеку в опциях линковщика прицепить, но ругается. Я как бы даже не прошу мне решение подсказать, ибо интересно самому нарыть, но просто подскажите, в какую сторону рыть, ибо я не смог составить поисковый запрос на msdn, чтоб нашло то, что мне нужно. Использую msvc2003. -------------------- Мы - Днепряне. Мы всех сильней. |
|||
|
||||
| cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 2 Всего: 99 |
-------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 3 Всего: 73 |
Fedor, чем ты компилировал asm? obj файлы имеют разный формат у различных компиляторов... Если не ошибаюсь, то у мелкософта это COFF. Выходом будет компиляция тем же C-шным компилерром в asm-вставке.
__asm{ ... } -------------------- Теперь при чем :P |
|||
|
||||
| Fedor |
|
|||
![]() Днепрянин ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2090 Регистрация: 8.2.2003 Где: Великий Репутация: нет Всего: 32 |
Ignat
Асм-вставка не подходит. Нужно именно в отдельном файле. З.Ы. Я кое-что нарыл на сырцах, буду разбиратся. Если вопросы появятся, буду задавать. Пока что спасибо за помощь -------------------- Мы - Днепряне. Мы всех сильней. |
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 3 Всего: 73 |
сорри, не заметил, что тасм.
Fedor, кстати, возможно тасмовский obj имеет формат OMF, применяемый борландом, тогда можно попробовать компилировать борландовским bcc. -------------------- Теперь при чем :P |
|||
|
||||
| Fedor |
|
|||
![]() Днепрянин ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2090 Регистрация: 8.2.2003 Где: Великий Репутация: нет Всего: 32 |
хм. А если я хочу использовать Visual C++, то я не могу tasm-ом объектники создавать? Выход - masm?
-------------------- Мы - Днепряне. Мы всех сильней. |
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 3 Всего: 73 |
Теоретически да, но майкрософтовцы не сразу перешли к COFF формату. А в асмовских компиллерах я не силен. Как вариант, можно написать весь проект в VC++, создать студией Makefile, а затем переправить его под борландовский компиллятор, он вполне корректно жует MFC со всеми её макросами. Но предварительно стоит убедиться, что bcc корректно прилинкует тасмовый obj. -------------------- Теперь при чем :P |
|||
|
||||
| Fedor |
|
|||
![]() Днепрянин ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2090 Регистрация: 8.2.2003 Где: Великий Репутация: нет Всего: 32 |
Ага. МСДН:
Значит, можно использовать тасмовские объектники. -------------------- Мы - Днепряне. Мы всех сильней. |
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 3 Всего: 73 |
Не факт
Переведешь? -------------------- Теперь при чем :P |
|||
|
||||
| Fedor |
|
|||
![]() Днепрянин ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2090 Регистрация: 8.2.2003 Где: Великий Репутация: нет Всего: 32 |
Хм. Ну возможно, именно поэтому у меня и не получается. Ок. Вечером скачаю masm, буду его юзать. -------------------- Мы - Днепряне. Мы всех сильней. |
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 3 Всего: 73 |
Результат расскажи, интересно-таки -------------------- Теперь при чем :P |
|||
|
||||
| Fedor |
|
|||
![]() Днепрянин ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2090 Регистрация: 8.2.2003 Где: Великий Репутация: нет Всего: 32 |
В общем, закачал MASM. Делаю объектный файл. Вроде, все ок. Файл формата coff.
Далее в вижуал студии в опциях проекта в опциях линковщика ставлю Additional Dependencies файл asm.obj. Объявляю функцию как extern "C", вызываю ее в программе Билдю, и вот тут линковщик ругается. Говорит, что такой экстерн-функции нигде нету. -------------------- Мы - Днепряне. Мы всех сильней. |
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 3 Всего: 73 |
Fedor, можешь скинуть мне этот obj на мыло?
-------------------- Теперь при чем :P |
|||
|
||||
| Fedor |
|
|||
![]() Днепрянин ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2090 Регистрация: 8.2.2003 Где: Великий Репутация: нет Всего: 32 |
Не могу
Леплю сюда. Присоединённый файл ( Кол-во скачиваний: 3 )
Asm.obj 0,11 Kb-------------------- Мы - Днепряне. Мы всех сильней. |
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 3 Всего: 73 |
Fedor, я вообще не нашел заголовка экспортируемой функции в файле.
-------------------- Теперь при чем :P |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |