Вопросы с тегом «linker»

Компоновщик является частью набора инструментов для создания исполняемых файлов из исходного кода, написанного на скомпилированных языках программирования. Он принимает скомпилированный объектный код из нескольких файлов и создает из них один «связанный» исполняемый файл.

619
Встраивание DLL в скомпилированный исполняемый файл

Можно ли встроить уже существующую DLL в скомпилированный исполняемый файл C # (чтобы у вас был только один файл для распространения)? Если это возможно, как можно это сделать? Обычно я просто оставляю DLL снаружи и заставляю программу установки справиться со всем, но на работе было несколько...

417
Как работает процесс компиляции / компоновки?

Как работает процесс компиляции и компоновки? (Примечание. Предполагается, что это будет вход в FAQ по C ++ в Stack Overflow . Если вы хотите критиковать идею предоставления FAQ в этой форме, то публикация в meta, с которой все это началось, будет подходящим местом для этого. Этот вопрос...

273
Разница между общими объектами (.so), статическими библиотеками (.a) и DLL (.so)?

Я принимал участие в некоторых дебатах по поводу библиотек в Linux и хотел бы подтвердить некоторые вещи. Насколько я понимаю (пожалуйста, исправьте меня, если я ошибаюсь, и я отредактирую свой пост позже), что есть два способа использования библиотек при создании приложения: Статические библиотеки...

217
Разрешение LNK4098: конфликт библиотеки по умолчанию «MSVCRT» конфликтует с

Это предупреждение: LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; use /NODEFAULTLIB:library это довольно распространенное предупреждение в Visual Studio. Я хотел бы понять точную причину этого и правильный способ (если вообще) справиться с этим. Это происходит в...

209
g ++ неопределенная ссылка на typeinfo

Я просто наткнулся на следующую ошибку (и нашел решение в сети, но его нет в переполнении стека): (.gnu.linkonce. [stuff]): неопределенная ссылка на [метод] [объектный файл] :(. gnu.linkonce. [stuff]): неопределенная ссылка на `typeinfo для [classname] ' Почему можно получить одну из этих ошибок...

205
libpthread.so.0: ошибка при добавлении символов: DSO отсутствует в командной строке

Когда я компилирую openvswitch-1.5.0, я столкнулся со следующей ошибкой компиляции: gcc -Wstrict-prototypes -Wall -Wno-sign-compare -Wpointer-arith -Wdeclaration-after-statement -Wformat-security -Wswitch-enum -Wunused-parameter -Wstrict-aliasing -Wbad-function-cast -Wcast-align -Wstrict-prototypes...

172
«/ Usr / bin / ld: не могу найти -lz»

Я пытаюсь скомпилировать исходный код Android под Ubuntu 10.04. Я получаю сообщение об ошибке, / usr / bin / ld: не могу найти -lz Подскажите, пожалуйста, как мне это исправить? Что cannot find -lzзначит? Вот полное сообщение об ошибке: external/qemu/Makefile.android:1101: warning: overriding...

169
Я не могу найти существующую библиотеку

Я пытаюсь связать приложение с g ++ в этой системе Debian lenny. ld жалуется, что не может найти указанные библиотеки. Конкретным примером здесь является ImageMagick, но у меня возникают похожие проблемы и с некоторыми другими библиотеками. Я звоню компоновщику с: g++ -w (..lots of .o files/include...

148
Что такое объектный файл в C?

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

138
Связывание статических библиотек с другими статическими библиотеками

У меня есть небольшой фрагмент кода, который зависит от многих статических библиотек (a_1-a_n). Я хотел бы упаковать этот код в статическую библиотеку и сделать его доступным другим людям. Моя статическая библиотека, назовем ее X, компилируется нормально. Я создал простой пример программы, которая...

133
Указание gcc напрямую связать библиотеку статически

Мне кажется странным использовать -Wl,-Bstatic, чтобы сказать, с gccкакими библиотеками я хочу связать статически. Ведь всю остальную gccинформацию о линковке с библиотеками я рассказываю напрямую ( -Ldir, -llibname). Можно ли напрямую указать драйверу gcc, какие библиотеки должны быть связаны...

131
ошибка LNK2038: обнаружено несоответствие для '_ITERATOR_DEBUG_LEVEL': значение '0' не соответствует значению '2' в main.obj

Я прочитал много решений моей проблемы, но ни одно из них не помогло. Я пробовал почистить, пересобрать. Переустановил Visual 2010 и сменил профессиональный на окончательный. Но все же я не знаю, почему у меня эта ошибка. Мой проект выглядит так: 1 Exe Решение для тестирования моей статической...

128
Как определить целевую архитектуру статической библиотеки (.a) в Mac OS X?

Мне интересно проверить, создана ли данная статическая библиотека iPhone для ARM или Intel. Это больше любопытство, чем что-либо еще. Есть ли для этого какой-нибудь специальный инструмент для Mac OS X или BSD? В этом посте приводится пример для...

128
Возможно ли скомпилировать Python в машинный код?

Насколько возможно было бы скомпилировать Python (возможно, через промежуточное представление C) в машинный код? Предположительно, это должно быть связано с библиотекой времени выполнения Python, и любые части стандартной библиотеки Python, которые сами являются Python, также должны быть...

127
Что делают линкеры?

Мне всегда было интересно. Я знаю, что компиляторы преобразуют код, который вы пишете, в двоичные файлы, но что делают компоновщики? Они всегда были для меня загадкой. Я примерно понимаю, что такое «связывание». Это когда в двоичный файл добавляются ссылки на библиотеки и фреймворки. Я ничего не...

127
Что происходит с глобальными и статическими переменными в разделяемой библиотеке, когда она динамически связана?

Я пытаюсь понять, что происходит, когда модули с глобальными и статическими переменными динамически связываются с приложением. Под модулями я подразумеваю каждый проект в решении (я много работаю с Visual Studio!). Эти модули либо встроены в * .lib, либо * .dll, либо в сам * .exe. Я понимаю, что...

127
Маленькая программа на Haskell, скомпилированная с помощью GHC, в огромный двоичный файл

Даже тривиально маленькие программы на Haskell превращаются в гигантские исполняемые файлы. Я написал небольшую программу, которая была скомпилирована (с помощью GHC) в двоичный файл размером более 7 МБ! Что может заставить даже небольшую программу на Haskell компилироваться в огромный двоичный...