Сообщения об ошибках редактора связей — КиберПедия 

Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...

Сообщения об ошибках редактора связей

2022-10-05 31
Сообщения об ошибках редактора связей 0.00 из 5.00 0 оценок
Заказать работу

Редактор связей в процессе работы может столкнуться с некорректными данными. В этом случае он выдает сообщение не экран. Для выдачи сообщений на экран редактор связей использует форматированную строку. Ее формат является единым для всего комплекса NMSDK и имеет следующий вид:

“[имя_файла]”: тип_ошибки номер_ошибки: сообщение_об_ошибке.

где:

имя_файла - имя файла, при разборе внутренней структуры которого произошла ошибка. Поле имя_файла может отсутствовать, когда ошибка произошла вне блока разбора входных файлов.
тип_ошибки - один из типов ошибок, приведенных ниже в этом разделе.
код_ошибки - символьное обозначение ошибки. Представляет собой буквенно-цифровой код, три первых символа которого являются сокращением названия программы, породившей сообщение об ошибке, а остальные ее номер. Каждая программа NMSDK имеет автономную нумерацию ошибок. Пример кода ошибки: LNK412.
сообщение_об_ошибке - краткая справочная информация о причине возникновения ошибочной ситуации в ходе работы данной программы NMSDK.

Пример:

"file.elf" ОШИБКА LNK412: "Несколько символьных таблиц в одном файле!"

 

Все некорректные ситуации редактор связей делит на четыре группы, которым соответствуют четыре типа ошибок:

· Предупреждения. Предупреждение появляется, когда возникшая некорректная ситуация может повлиять на конечный результат работы библиотекаря, однако библиотекарю хватает информации для создания правильного выходного файла. Например, когда одна из входных директив не может быть использована в данном режиме работы библиотекаря, редактор связей выдает соответствующие предупреждения. При этом работа по разбору остальных входных параметров продолжается.

· Ошибки. Ошибка возникает, когда из-за некорректных входных данных библиотекарь не в состоянии создать правильный выходной файл. Например,.... В такой ситуации на экран выдается сообщение об ошибке, а библиотекарь прекращает работу и возвращает ненулевое значение.

· Внутренние ошибки. Внутренняя ошибка может возникнуть из-за неправильной работы самого библиотекаря. При возникновении такой ситуации все исходные данные желательно передать разработчикам для устранения дефектов. В такой ситуации на экран выдается сообщение о внутренней ошибке, а библиотекарь прекращает работу и возвращает ненулевое значение.

· Фатальные ошибки. Фатальная ошибка возникает в случае нехватки памяти для работы библиотекаря. Она указывает на то, что в сложившейся ситуации работа библиотекаря с данными входными параметрами не может быть продолжена. Необходимо изменить параметры системы.

 

Под номер ошибки отведено три цифры, то есть он лежит в интервале от 0 до 999. Между типами ошибок номера были распределены следующим образом:

0 - 399 Предупреждения.
400 - 799 Ошибки.
800 - 949 Внутренние ошибки.
950 - 999 Фатальные ошибки.

Предупреждения

 

LNK001 "Секция "..." не должна иметь таблицу перемещений. Таблица игнорируется."
  - секция, которая не должна иметь таблицу перемещений, имеет ее. В такой ситуации таблица перемещений игнорируется. Ошибка произошла в процессе формирования данного объектного файла. Если редактору связей в дальнейшем не удастся создать выходной файл, возникнет соответствующая ошибка. На данном же этапе просто выдается предупреждение, не приводящее к остановке работы редактора.
LNK003 "По умолчанию размер кучи "..." равен 1K слов (32-битных)"
  - предупреждение о том, что пользователь не задал размер соответствующей кучи динамической памяти, хотя использовал в своей программе функции работы с динамической памяти. Поскольку библиотека времени выполнения не отслеживает выход за пределы кучи, пользователь должен самостоятельно заботиться об этом. Поэтому предупреждение напоминает, что пользователь не установил новый размер кучи, а ее умалчиваемый размер 1К слов.
LNK004 "Неверный параметр "...". Игнорируется."
  - предупреждение о том, что пользователь задал неправильный параметр в командной строке или в командном файле. Этот параметр никак не влияет на ход выполнения редактором своих работ.
LNK005 "Повторное задание ключа "...". Игнорируется."
  - предупреждение о том, что пользователь повторно задал параметр в командной строке или в командном файле. Этот параметр игнорируется.
LNK006 "Во избежание удаления входного файла выходной имеет расширение ".elz"."
  - предупреждение о том, что пользователь может запортить содержимое входного объектного файла, так как его имя совпадает с именем выходного. Такое сообщение выдается в режиме сборки объектного файла (ключ -elf или -е) при незаданном имени выходного файла. Поскольку, по умолчанию все объектные файлы имеют расширение ".elf", существует опасность потерять входной файл. Для устранения данной проблемы редактор связей создаст выходной файл с расширением ".elz".
LNK007 "В командном файле встречен вызов другого командного файла. Игнорируется."
  - предупреждение о том, что пользователь пытается осуществить рекурсивный вызов командного файла. То есть, в командном файле не может содержаться вызов другого командного файла. Редактор связей игнорирует данную директиву.
LNK008 "Не могу открыть командный файл "...". Он игнорируется."
  - предупреждение о том, что редактор связей не может открыть командный файл, указанный в качестве параметра командной строки. Данная команда игнорируется.
LNK010 "При создании объектного файла ключ "-d" игнорируется."
  - предупреждение о том, что в режиме создания объектного файла ключ -d, обозначающий удаление неиспользуемых секций, игнорируется.

Ошибки

 

LNK401 "Ссылка на неопределенный локальный символ "..." из секции "..."."
  - данная ошибка может появиться вследствие ошибки во входном объектном файле, название которого приведено в начале форматированной строки сообщения.
LNK402 "Секция "..." имеет разные флаги в разных файлах."
  - это означает, что в одном из входных объектных файлов заголовок данной секции содержит флаг о ее загрузке в память вычислительного устройства, а в другом файле секция не содержит этого флага, то есть не является загружаемой. Ошибка может быть порождена неправильной работой компилятора ассемблера или сбоем в объектном файле.
LNK403 "Недостаточно места в сегменте "..." для размещения секций."
  - данная ошибка возникает, когда в файле конфигурации записано, что сегмент "..." имеет наперед заданный размер и содержит некоторый набор секций, а в ходе вычисления размеров секций оказывается, что для них в сегменте не хватает места. Ошибка может быть исправлена путем увеличения размера сегмента или перемещением одной или нескольких секций в другой сегмент.
LNK404 "Неизвестный тип ссылки в секции "..."."
  - данная ошибка возникает, когда в соответствующем поле объектного файла хранится значение, отличное от ожидаемого. Всего существует три типа ссылки на символ: абсолютная, относительная и байтовая. Если в поле, определяющем тип ссылки, записано другое значение, это приводит к ошибке. Ошибка может быть порождена неправильной работой кросс-ассемблера или сбоем в объектном файле.
LNK405 "Не задана точка входа "..."."
  - данная ошибка возникает, когда редактор связей не может определить адрес глобальной метки, определяющей точку входа. По умолчанию точка входа именуется как "start". Поэтому редактор связей в качестве точки входа определяет адрес символа "start". При изменении имени точки входа редактор использует адрес нового глобального символа. Если символ не определен, возникает данная ошибка (см. пункт 4.8.6 Определение имени точки входа (ключ -start=<имя_метки>)).
LNK406 "Структура данного файла не соответствует формату ELF."
  - данная ошибка возникает при попытке открытия редактором связей файла, который не является объектным, или его формат не соответствует формату, принятому в рамках базового ПО. Необходимо проверить, тот ли файл подается на вход редактору.
LNK407 "Данный тип процессора не поддерживается."
  - данная ошибка возникает при попытке подать на вход редактору связей объектный файл формата ELF, предназначенный для типа процессора, не поддерживаемого данным базовым ПО (для любого кроме процессоров серии 1879ВМ). При возникновении данной ошибки необходимо перекомпилировать исходный текст программы, из которого был получен данный объектный файл.
LNK408 "Данный файл создан при помощи устаревшей версии библиотеки доступа к ELF."
  - при возникновении данной ошибки необходимо перекомпилировать исходный текст программы, из которого был получен данный объектный файл. Возможно, новая версия редактора порождает объектные файлы, которые оказываются несовместимыми по внутренней структуре с файлами, полученными при помощи предыдущей версии редактора связей.
LNK409 "Несколько символьных таблиц в одном файле не поддерживаются."
  - данная ошибка может возникнуть, когда объектный файл, полученный редактором связей в качестве входного параметра, содержит несколько символьных таблиц. Данная конфигурация не запрещена форматом ELF, однако программное обеспечение NMSDK рассчитано на то, что в объектных файлах, порождаемых в его рамках, хранится только одна таблица символов. При возникновении данной ошибки необходимо перекомпилировать исходный текст программы, из которого был получен данный объектный файл.
LNK410 "Неизвестный тип секции ("...")."
  - данная ошибка может возникнуть, когда в структуре входного объектного файла была встречена секция, тип которой редактор связей определить не смог. Всего в объектных файлах формата ELF встречается пять типов секций: секции инициализированных и неинициализированных данных, таблица символов, таблица строк и таблица ссылок. Если в поле заголовка секции записано значение, которое не соответствует ни одному типу секции, то возникнет данная ошибка. При возникновении данной ошибки необходимо перекомпилировать исходный текст программы, из которого был получен данный объектный файл.
LNK411 "Не найдена таблица символов."
  - данная ошибка возникает, когда редактор связей не может найти во входном объектном файле таблицу символов. Символьная таблица должна существовать даже в случае, когда исходная программа не содержит ни одного символа. В этом случае она состоит из одного нулевого элемента. При возникновении данной ошибки необходимо перекомпилировать исходный текст программы, из которого был получен данный объектный файл.
LNK412 "Не найдена таблица имен символов."
  - данная ошибка возникает, когда редактор связей не может найти во входном объектном файле таблицу имен символов. Таблица имен символов должна существовать даже в случае, когда исходная программа не содержит ни одного символа. В этом случае она состоит из одного нулевого элемента. При возникновении данной ошибки необходимо перекомпилировать исходный текст программы, из которого был получен данный объектный файл.
LNK413 "Неверное поле в заголовке таблицы символов."
  - данная ошибка возникает, когда поле, хранящее размер элемента таблицы символов равно нулю. Ошибка может быть порождена неправильной работой компилятора ассемблера или сбоем в объектном файле. При ее возникновении необходимо перекомпилировать исходный текст программы, из которого был получен данный объектный файл.
LNK414 "Неверное поле в заголовке таблицы перемещений "..."."
  - данная ошибка возникает, когда поле, хранящее размер элемента таблицы ссылок равно нулю. Сообщение содержит информацию о том, в какой именно таблице ссылок произошел сбой. Ошибка может быть порождена неправильной работой компилятора ассемблера или сбоем в объектном файле. При ее возникновении необходимо перекомпилировать исходный текст программы, из которого был получен данный объектный файл.
LNK415 "Символ "..." имеет разные типы в разных файлах."
  - данная ошибка возникает, когда в одном из входных объектных файлов символ "..." объявлен как объект данных, а в другом файле на него ссылаются, как на метку (и наоборот, объявлен как метка, а ссылаются на него, как на объект данных). Для устранения ошибки программисту необходимо упорядочить работу с данным символом, привести в соответствие его тип в разных исходных файлах на языке ассемблера или на Си++.
LNK416 "Переопределение глобального символа "..."."
  - данная ошибка возникает, когда глобальный символ определен в нескольких объектных файлах. Обычно глобальные символы определяются только в одном файле, а в других файлах объявляют его, как внешний. Задача редактора связей отождествить все ссылки на данный глобальный символ с ним самим и правильно вычислить его адрес в памяти вычислительного устройства. Если же глобальный символ объявлен в нескольких местах, то редактор не в состоянии определить его адрес. Для исправления ошибки необходимо оставить объявление символа только в одном файле (с использованием слова global), а в остальных файлах объявить его как внешний (с использованием ключевых слов weak или extern).
LNK417 "Глобальный символ "..." не определен."
  - данная ошибка возникает, когда во всех входных объектных файлах данный глобальный символ объявлен, как внешний (с использованием ключевых слов weak или extern), и нет места, где бы он был объявлен, как глобальный и под него было бы выделено место. Ключевое слово global приводит к выделению места для глобального символа, тогда как extern только объявляет символ, как внешний, без выделения для него места. Для исправления ошибки необходимо в одном из файлов исходных текстов объявить данный символ, как глобальный.
LNK418 "Не задано ни одного входного файла."
  - данная ошибка возникает, когда в командной строке или в командном файле редактора связей нет ни одного входного объектного файла.
LNK419 "Абсолютный файл не может быть входным параметром."
  - данная ошибка возникает, когда в командной строке или в командном файле редактора связей в качестве входного объектного файла передается абсолютный исполняемый файл.
LNK420 "Данный тип объектного файла формата ELF не поддерживается."
  - данная ошибка возникает, когда на вход редактора связей подается объектный файл, созданный вне NMSDK процессоров серии 1879ВМ. При ее возникновении необходимо перекомпилировать исходный текст программы, из которого был получен данный объектный файл.
LNK421 "common-символ "..." имеет тип "метка"."
  - данная ошибка возникает, когда в программе на языке ассемблера объявляется common-символ типа "метка" (пример: common AAA: label;). Common-символ может иметь только тип "данные". Если возникла такая ошибка, необходимо внести исправление в файл на языке ассемблера.
LNK422 "Символ "..." хранит неверный индекс секции."
  - ошибка во входном объектном файле. Каждый символ таблицы символов помимо информации о файле, в котором он определен, содержит информацию о входной секции, в которой под него было выделено место. Эта информация хранится в виде индекса в таблице секций входного файла. Если данный индекс указывает на секцию, не являющуюся секцией данных, то возникает данная ошибка (функция, выдающая ошибку - CalcSymAddr). Возможно, ошибка произошла вследствие возникшего сбоя при создании входного объектного файла. Необходимо повторно создать объектный файл при помощи ассемблера. Если это не приведет к устранению ошибки, то необходимо с данной проблемой обратиться к разработчикам компилятора ассемблера.
LNK423 "Ссылка из секции "..." на символ, определенный в служебной секции."
  - ошибка во входном объектном файле. В таблице перемещений указанной секции данных встретилась ссылка на символ, определенный в служебной секции, например в таблице имен символов.
LNK424 "Количество неопределенных символов:... "
  - данная информационная строка подводит итог по поиску определений неопределенных глобальных символов в библиотечных файлах. Возникает только в случае, когда неопределенным остался хотя бы один глобальный символ.

Внутренние ошибки

 

LNK801 "Указатель на выходную секцию "..." не существует."
  - данная ошибка возникает, когда редактор связей пытается добавить данные, хранящиеся во входной секции в выходную с тем же именем (функция AddData), и при этом указатель на выходную секцию, для данной входной равен NULL. Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK802 "Секция ".common" не найдена."
  - данная ошибка возникает, когда редактор связей пытается вычислить адрес common-символа, а соответствующая секция, где он может быть определен, еще не создана (функция CalcSymAddr). Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK803 "Неизвестный тип выходного файла."
  - данная ошибка возникает при попытке редактора связей создать выходной файл, тип которого отличен от абсолютного исполняемого, исполняемого перемещаемого и объектного. Ошибка возникает в функции StoreOutFile. Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK804 "Переопределение специального символа "..."."
  - данная ошибка возникает, когда объявление одного из символов: __HEAP_SIZE, __HEAP1_SIZE, __HEAP2_SIZE, __HEAP3_SIZE, ctor, dtor встречается дважды. Данные символы не объявляются в прикладной программе, а определяются редактором связей (функция CreateAbsSymbols). Данная ошибка возникнет также, когда произошла ошибка в определении точки входа (функция FitEntryPointSymbol). Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK805 "Не могу добавить данные в секцию "...". (...)"
  - данная ошибка возникает при попытке добавить в выходную секцию данные, из одноименной входной секции. Ошибка происходит на низком уровне (в модуле libelf.cpp) при работе функции AddData. В скобках выдается оригинальное диагностическое сообщение библиотеки libelf. Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK806 "Не могу склеить данные секции "...". (...)"
  - данная ошибка возникает при попытке слияния одноименных входных секций данных в одну выходную. Ошибка происходит на низком уровне (в модуле libelf.cpp) при работе функции MergeSects. В скобках выдается оригинальное диагностическое сообщение библиотеки libelf. Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK807 "Не могу создать выходные секции. (...)"
  - данная ошибка возникает при попытке создания выходной секции. Ошибка происходит на низком уровне (в модуле libelf.cpp) при работе функции CreateElfScn. В скобках выдается оригинальное диагностическое сообщение библиотеки libelf. Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK808 "Не могу разрешить ссылки. (...)"
  - данная ошибка возникает при попытке разрешения ссылок, хранящихся в таблицах ссылок секций инициализированных данных. Ошибка происходит на низком уровне (в модуле libelf.cpp) при работе функции CreateAbsAddr. В скобках выдается оригинальное диагностическое сообщение библиотеки libelf. Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK809 "Не могу пересчитать выходные таблицы перемещений. (...)"
  - данная ошибка возникает в процессе создания выходных таблиц перемещений для секций инициализированных данных (в режиме -elf). Ошибка происходит на низком уровне (в модуле libelf.cpp) при работе функции FillOutRelTabs. В скобках выдается оригинальное диагностическое сообщение библиотеки libelf. Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK810 "Не могу сохранить выходные таблицы перемещений. (...)"
  - данная ошибка возникает в процессе сохранения в выходном файле таблиц перемещений для секций инициализированных данных (в режиме -elf). Ошибка происходит на низком уровне (в модуле libelf.cpp) при работе функции StoreRelTabs. В скобках выдается оригинальное диагностическое сообщение библиотеки libelf. Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK811 "Не могу сохранить выходной файл. (...)"
  - данная ошибка возникает в процессе сохранения выходного файла. Ошибка происходит на низком уровне (в модуле libelf.cpp) при вызове функции StoreOutFile. В скобках выдается оригинальное сообщение библиотеки libelf. Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей..
LNK812 "Ссылка на "неиспользуемый" символ "..." из секции "..."."
  - данная ошибка возникает, когда редактор связей в режиме удаления неиспользуемых секций и символов помечает данный символ, как неиспользуемый, тогда как на него существует ссылка. Ошибка возникает во время работы функции CreateAbsAddr. Объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK813 "Входная секция имеет неверную ссылку на выходную секцию."
  - ошибка во взаимодействии внутренних структур редактора связей. Каждая входная секция данных хранит ссылку на одноименную выходную. Этой ссылкой является индекс в таблице выходных секций. Если этот индекс лежит вне диапазона индексов таблицы выходных секций, то возникает данная ошибка (функция CalcSymAddr). Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK814 "Файловый индекс символа "..." вне заданного диапазона."
  - ошибка во взаимодействии внутренних структур редактора связей. Каждый символ таблицы символов содержит информацию о файле, в котором он был определен. Эта информация хранится в виде индекса в таблице входных файлов редактора связей. Ошибка может возникнуть во время работы функции CalcSymAddr. Возможно, ошибка произошла вследствие возникшего сбоя в редакторе связей. Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK815 "Секционный индекс символа "..." вне заданного диапазона."
  - ошибка во взаимодействии внутренних структур редактора связей. Каждый символ таблицы символов помимо информации о файле, в котором он определен, содержит информацию о входной секции, в которой под него было выделено место. Эта информация хранится в виде индекса в таблице секций входного файла. Ошибка может возникнуть во время работы функции CalcSymAddr. Возможно, ошибка произошла вследствие возникшего сбоя в редакторе связей. Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK816 "Ошибка чтения таблицы символов (...)."
  - данная ошибка может возникнуть в процессе чтения символьной таблицы. Причиной может послужить ее неправильная структура или ошибка в процессе чтения из файла. Ошибка происходит на низком уровне (в модуле libelf.cpp) при работе функции ReadSymTab. В скобках выдается оригинальное диагностическое сообщение библиотеки libelf. Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK817 "Ошибка чтения таблицы перемещений "...". ("...")"
  - данная ошибка может возникнуть в процессе чтения таблиц перемещений. Причиной может послужить их неправильная структура или ошибка в процессе чтения из файла. Ошибка происходит на низком уровне (в модуле libelf.cpp) при работе функции CreateRefTab. В скобках выдается оригинальное диагностическое сообщение библиотеки libelf. Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK818 "Ошибка при загрузке файла (...)."
  - данная ошибка может возникнуть в процессе загрузки и разбора структур входного объектного файла. Причиной может послужить его неправильная структура или ошибка в процессе чтения с диска. Ошибка происходит на низком уровне (в модуле libelf.cpp) при работе функции Load. В скобках выдается оригинальное диагностическое сообщение библиотеки libelf. Если восстановление из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK819 "В данный момент очередь символов не должна быть пустой."
  - данная ошибка может возникнуть в процессе поиска определений неопределенных символов в библиотеках. Ошибка происходит на низком уровне (в модуле lib.cpp) при работе функции LinkLibsWithoutClearance или LinkLibsWithClearance. Если восстановление редактора связей из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK820 "В очереди неопределенных символов неожиданно появился определенный символ."
  - данная ошибка может возникнуть в процессе поиска определений неопределенных символов в библиотеках. Ошибка происходит на низком уровне (в модуле lib.cpp) при работе функции LinkLibsWithoutClearance или LinkLibsWithClearance. Если восстановление редактора связей из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK821 "Символ "..." неожиданно потерян."
  - данная ошибка может возникнуть в процессе поиска определений неопределенных символов в библиотеках. Ошибка происходит на низком уровне (в модуле lib.cpp) при работе функции LinkLibsWithClearance. Если восстановление редактора связей из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK822 "Символ "..." имеет тип данных, не встречающийся в библиотеках."
  - данная ошибка может возникнуть в процессе поиска определений неопределенных символов в библиотеках. Ошибка происходит на низком уровне (в модуле lib.cpp) при работе функции LinkLibsWithClearance. Если восстановление редактора связей из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.
LNK823 "Секция "..." содержит неверный индекс выходной секции."
  - данная ошибка может возникнуть в процессе установления связей между входными и выходными секциями. Ошибка происходит на низком уровне (в модуле concat.cpp) при работе функции FillOutRelTabs. Если восстановление редактора связей из архивной копии не даст результата, то объектные файлы, при редактировании связей, в которых встретилась данная ошибка, необходимо передать разработчикам редактора связей.

 


 

Фатальные ошибки

 

LNK951 "Ошибка при запросе... байтов памяти."
  - данная ошибка возникает, когда недостаточно свободного пространства для работы редактора связей. Попытка выделения в области динамической памяти очередного массива для размещения внутренних структур оканчивается неудачей. В результате работа не может быть продолжена. Для исправления данной ситуации необходимо каким-либо образом освободить динамическую память. Например, выгрузить некоторые резидентные программы, или увеличить свободное место на диске, на котором создается системный временный файл.
LNK952 "Не могу создать выходной файл: "..."."
  - данная ошибка возникает из-за каких-либо отказов операционной системы при создании файла. Например, к данной ошибке может привести нехватка места на диске, или отсутствие каталога, в который пользователь хочет записать файл, или запрет записи в определенные каталоги, налагаемый операционной системой. Прежде, чем продолжить работу с редактором связей, необходимо разобраться с причиной ошибки, или выбрать другое место на диске, куда файл должен быть записан.
LNK953 "Не могу открыть файл "..."."
  - данная ошибка возникает из-за проблем, порожденных операционной системой. Например, при попытке открыть файл, используемый в это же время другими приложениями. Прежде, чем продолжить работу с редактором связей, необходимо понять, что явилось ее причиной.
LNK954 "Файл "..." не найден."
  - данная ошибка возникает из-за отсутствия входного файла с данным именем.

 


 

 


5   Библиотекарь объектных файлов

Введение

В данной главе описан интерфейс, управляющие параметры и режимы работы программы - библиотекаря объектных файлов, входящей в состав NMSDK. Дано полное описание возможностей библиотекаря и способов работы с ним, включая информацию обо всех ключах и использовании командных файлов. Здесь также приведен список ошибок, обнаруживаемых или диагностируемых библиотекарем. Для лучшего понимания приведены примеры работы с библиотекарем объектных файлов.


Поделиться с друзьями:

Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...

Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...

Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...

История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.03 с.