ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
18 апреля
893810 Топик полностью
Ксения (06.01.2019 12:07 - 12:09, просмотров: 153) ответил Хитрый Китаец на Язык то один, но смена регистров, общий вид, подстановка макровыражений, шелловские заморочки и т.д. доставляют :)
У меня совсем простой случай (всего две строки), но всё равно неясно, как это с помощью make сделать: ml64 /c /Cp *.asm lib /MACHINE:X64 /OUT:asm64.lib *.obj первая строка затем, чтобы ассемблерные asm-файлы скопилировались в объектные obj-файлы, а вторая строка, чтобы объектные obj-файлы сложились в библиотеку asm64.lib (все в одну). Проблема же в том, что asm-файлов очень много (где-то под сотню), тогда как компилятор ассемблера ml64 и библиотекарь lib имена файлов с дикой картой (*) не понимают. А при написании в развернутом виде (в виде списка) возникают еще две проблемы: ограничение на длину строки (когда ее конец игнорируется) и сложность сохранять соответствие между asm- и obj-списками (а то либо библиотекарь ругается, что какой-то obj-файл отсутствует, либо "забывает" его включить в библиотеку). Пыталась использовать для этой цели командный bat-файл с циклом перечисления по всем *.asm, но наткнулась на то, что не могу его средствами заменить расширение *.asm на *.obj, чтобы преобразовать имена asm-файлов в obj-файлы. Можно ли этому горю помочь?