Запитання з тегом «linker»

Лінкер є частиною ланцюжка інструментів для створення виконуваних файлів із вихідного коду, написаного на складених мовах програмування. Він приймає складений об'єктний код у декількох файлах і створює з них єдиний, "пов'язаний", виконуваний файл.

12
Чи можливо компілювати Python для машинного коду?
Наскільки можливим буде компілювати Python (можливо, через проміжне представлення C) у машинний код? Імовірно, знадобиться посилання на бібліотеку виконання Python, і будь-які частини стандартної бібліотеки Python, які були самі Python, також повинні бути складені (і пов'язані з ними). Крім того, вам потрібно було б поєднати інтерпретатор Python, якщо ви хочете …
128 python  c  linker  compilation 

5
Як визначити цільову архітектуру статичної бібліотеки (.a) на Mac OS X?
Мені цікаво перевірити, чи була створена статична бібліотека iPhone для ARM або Intel. Це більше цікавості, ніж нічого. Чи існує якийсь інструмент для Mac OS X або BSD для цього? Цей пост дає приклад в Linux.

2
Невелика програма Haskell, складена разом з GHC, у величезну бінарну
Навіть тривіально малі програми Haskell перетворюються на гігантські виконувані файли. Я написав невелику програму, яка була складена (з GHC) у двійкову, розмір якої перевищує 7 Мб! Що може спричинити компіляцію навіть невеликої програми Haskell до величезного бінарного файлу? Що, якщо що, я можу зробити, щоб зменшити це?

1
Що відбувається з глобальними та статичними змінними у спільній бібліотеці, коли вона динамічно пов'язана?
Я намагаюся зрозуміти, що відбувається, коли модулі з глобальними та статичними змінними динамічно пов'язані з додатком. Під модулями я маю на увазі кожен проект у рішенні (я багато працюю з візуальною студією!). Ці модулі або вбудовані у * .lib або * .dll або у сам * .exe. Я розумію, що …

4
Що роблять лінкери?
Я завжди цікавився. Я знаю, що компілятори перетворюють код, який ви пишете, у двійкові файли, але що роблять лінкери? Вони завжди були для мене загадкою. Я приблизно розумію, що таке "зв'язок". Це коли до бінарних файлів додаються посилання на бібліотеки та рамки. Я нічого не розумію поза цим. Для мене …

1
Що робить прапор зв’язку -all_load?
Я не можу ніде знайти, що робить прапор -all_load при компілюванні коду Objective-C. У мене є проблеми з завантаженням бінарних файлів в Apple, вони кажуть, що це тому, що я не використовував цей прапор, але мій код збирається навіть без нього. Може хтось мені в цьому допоможе? Дякую

8
Visual C ++: Як відключити конкретні застереження лінкера?
Я використовую бібліотеку від CGAL, яка на етапі зв’язування моєї компіляції коду створює багато посилань на попередження такої форми: warning LNK4099: PDB 'vc80.pdb' was not found with 'gmp-vc80-mt-sgd.lib' or at 'vc80.pdb'; linking object as if no debug info Як вимкнути це специфічне попередження про підключення під Visual C ++ / …

23
Чому фатальна помилка "LNK1104: не вдається відкрити файл" C: \ Program.obj "", коли я компілюю проект C ++ у Visual Studio?
Я створив новий проект C ++ у Visual Studio 2008. Жодного коду ще не написано; Змінено лише налаштування проекту. Коли я складаю проект, я отримую таку фатальну помилку: фатальна помилка LNK1104: не вдається відкрити файл 'C: \ Program.obj'
117 visual-c++  linker 

4
Як я можу зв’язатись із певною версією glibc?
Коли я компілюю щось на моєму ПК Ubuntu Lucid 10.04, воно з’єднується з glibc. Lucid використовує 2,11 glibc. Коли я запускаю цей двійковий файл на іншому ПК зі старшим glibc, команда не вдається сказати, що немає glibc 2.11 ... Наскільки я знаю, glibc використовує версію символів. Чи можу я змусити …
110 linux  gcc  linker  glibc  libc 

4
Як зробити повністю статично пов'язаний .exe з Visual Studio Express 2005?
Моє поточне бажане середовище C ++ - це безкоштовне та багато в чому чудове видання Microsoft Visual Studio 2005 Express. Час від часу я надсилаю релізні файли .exe іншим людям із приємними результатами. Однак нещодавно я зробив тривожне відкриття, що приємні результати ґрунтуються на більшій кількості удачі, яку я хотів …

8
статичне з'єднання лише деяких бібліотек
Як я можу статично пов’язати лише деякі певні бібліотеки до моїх бінарних файлів при з'єднанні з GCC? gcc ... -static ...намагається статично зв’язати всі пов'язані бібліотеки, але я не отримав статичну версію деяких з них (наприклад: libX11).


6
Для чого __gxx_personality_v0?
Це б / у питання з веб-сайту розробки ОС, але мене викликало цікавість, оскільки я ніде не міг знайти гідного пояснення. Під час компіляції та зв’язування стоячої програми C ++ за допомогою gcc іноді виникає помилка лінкера на зразок цього: out/kernel.o:(.eh_frame+0x11): undefined reference to `__gxx_personality_v0' Це, мабуть, тому, що цей …
103 c++  gcc  linker  kernel 

3
Чи безпечно пов’язувати об’єкти C ++ 17, C ++ 14 та C ++ 11
Припустимо, у мене є три скомпільовані об'єкти, всі створені одним і тим же компілятором / версією : A був складений за стандартом C ++ 11 B був складений за стандартом C ++ 14 C був складений за стандартом C ++ 17 Для простоти припустимо, що всі заголовки були написані на …
101 c++  c++11  linker  c++14  abi 

16
Розбиття шаблонованих класів C ++ на файли .hpp / .cpp - чи можливо?
Я отримую помилки при спробі скомпілювати клас шаблону C ++, який розділений між a .hppта .cppфайлом: $ g++ -c -o main.o main.cpp $ g++ -c -o stack.o stack.cpp $ g++ -o main main.o stack.o main.o: In function `main': main.cpp:(.text+0xe): undefined reference to 'stack<int>::stack()' main.cpp:(.text+0x1c): undefined reference to 'stack<int>::~stack()' collect2: ld …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.