Ошибка link?

Тема в разделе "WASM.WIN32", создана пользователем Avalonec, 24 авг 2004.

  1. Avalonec

    Avalonec New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2004
    Сообщения:
    111
    Адрес:
    Тула
    Люди, может кто сталкивался с такой проблемой?

    Под WinXP не получается отассебмблировать, точнее слинковать какой-либо файл.

    В чём тут дело? Может в том, что я использую компилятор ресурсов не масмовский:

    я использую brcc32.exe Version 5.40? Но всё нормально под win 9x.



    Ключи запуска:

    link.exe /SUBSYSTEM:WINDOWS /LIBPATH:\lib x.obj x.res



    Версия:

    Linker Version 5.12.8181

    Или может есть уже поновее? Если кто знает где их можно скачать, плз, ссылочку.



    Выдаёт такую вот ошибочку:

    fatal error LNK1123: failurt during conversion to COFF: file invalid or corrupt
     
  2. volodya

    volodya wasm.ru

    Публикаций:
    0
    Регистрация:
    22 апр 2003
    Сообщения:
    1.169
    У борланда OMF-формат, если не ошибаюсь. А слабо MS-компилеры ресурсов юзать?
     
  3. Avalonec

    Avalonec New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2004
    Сообщения:
    111
    Адрес:
    Тула
    >У борланда OMF-формат, если не ошибаюсь. А слабо MS-компилеры ресурсов юзать?



    Тады почему этого не случается под win98 и winme? И файл с компилированный под этими системами успешно идёт, как и должно, под xp.



    Использовать rc.exe, как-то совсем не хочется, т.к. в нём шибко мало определенно констант.
     
  4. volodya

    volodya wasm.ru

    Публикаций:
    0
    Регистрация:
    22 апр 2003
    Сообщения:
    1.169
    Я могу лишь повторить:



    "failure during conversion to COFF: file invalid or corrupt



    The object or resource could not be converted to Common Object File Format (COFF).



    This tool requires the format of all input files to be COFF. If an input file is not COFF, LINK automatically converts 32-bit OMF objects to COFF, or the tool runs CVTRES.EXE to convert resource files.



    Possible causes



    The file is corrupt.

    The file is not a valid file type. An example of an invalid type is a 16-bit OMF object.

    "
     
  5. Avalonec

    Avalonec New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2004
    Сообщения:
    111
    Адрес:
    Тула
    volodya



    Спасибо, за ответы! Хотя они мне не помогли, помогли по другому. Зато я покопался - был вынужден! :) - и нашёл причину: надо было исользовать другой линкер polink. Кстати, polink, будет по круче мелкософсткого link'ера.
     
  6. volodya

    volodya wasm.ru

    Публикаций:
    0
    Регистрация:
    22 апр 2003
    Сообщения:
    1.169
    Кстати, polink, будет по круче мелкософсткого link'ера.



    Версия:

    Linker Version 5.12.8181




    Хи-хи. Я не считаю себя экспертом в области компиляторов, но, насколько я знаю, есть только один компилер, который в чем-то лучше, чем MS VC++ - это компилер от Интел.

    А что до твоей тулзы - ты бы версию линкера поменял бы на постарше, глядишь и увидел бы что-то новое. Например, ассемблирование во время линкования.
     
  7. Avalonec

    Avalonec New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2004
    Сообщения:
    111
    Адрес:
    Тула
    Ну про версию ты поздновато заметилю :)

    Ну, hatch не зря включил в последний пакет masm polink, после него реяльно меньше код. Приведи ссылочки где можно разжиться замечательными компиляторами.
     
  8. volodya

    volodya wasm.ru

    Публикаций:
    0
    Регистрация:
    22 апр 2003
    Сообщения:
    1.169
    Приведи ссылочки где можно разжиться замечательными компиляторами.



    Ты в инструменты на сайте смотришь или нет? :)

    Там линкер от Vs 2003 вырипаный лежит и бетка из 2005. На бету забей, а вот 2003-линкер возьми.
     
  9. Avalonec

    Avalonec New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2004
    Сообщения:
    111
    Адрес:
    Тула
    volodya



    Ты в инструменты на сайте смотришь или нет? :)

    Ну, не подряд всё скачиваю. :) Но пакет масм у меня есть.



    Там линкер от Vs 2003 вырипаный лежит и бетка из 2005. На бету забей, а вот 2003-линкер возьми.

    Ты всё же имеешь ввиду файл polink.exe? :) А если нет, то как называется его файл, а то я даже не могу просмотреть версию и всё такое у линкеров, там слишком много ключей выводится, а нажать на паузу не успеваешь во время. :dntknw:
     
  10. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105




    Стыдно батенька таких вещей не знать.

    link.exe >aaaa и смотрите все !

    Ну я понимаю, IDE всякие, но командную строку

    забывать нельзя.
     
  11. Avalonec

    Avalonec New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2004
    Сообщения:
    111
    Адрес:
    Тула
    valterg



    Стыдно батенька таких вещей не знать.



    Ох, стыдно. :)
     
  12. zzzyab

    zzzyab New Member

    Публикаций:
    0
    Регистрация:
    13 май 2004
    Сообщения:
    115
    Еще одна ошибка:

    Загрузил линкер вер. 7.10.хххх



    Ввожу на файл откомпилированый масмом как обычно:



    link -debug -debugtype:cv -libpath:\moin\dev\sdk -entry:start -machine:x86 -pdb:none 001.obj msvcrt.lib



    Выдает:

    fatal error LNK1104: cannot open file 'TEMPFILE'



    он вообще работает под win98 ? или он не воспринимает старое SDK ?
     
  13. Asterix

    Asterix New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2003
    Сообщения:
    3.576
    zzzyab

    Последний работающий под win98 линкер был версии 7.00.9466(VS NET 2002)