с компилятором, а готовых библиотек импорта для АПИшных библиотек почему то нет.Build: Dec 27 2013, 12:58:32 - wx2.8.12 (windows, unicode) - 32 bit
Можно ли создать библиотеку импорта для сторонней DLL?
Модераторы: Duncon, Hawk, Romeo, Eugie
Например, для gdi32.dll? Есть только среда разработки Code Blocks
Писать можно на чём угодно, но зачем же так себя ограничивать? Пиши на c.
- Romeo
- Сообщения: 3091
- Зарегистрирован: 02 мар 2004, 17:25
- Откуда: Крым, Севастополь
- Контактная информация:
Lib файлы поставляются не со средой разработки, а с компилятором. С Code Blocks обычно используется в связке компилятор MinGW, у которого необходимые файлики расположены в подпапке lib. Так что для стандартных библиотек Windows (а gdi32.dll как раз относится к стандартным) никакие манипуляции не требуются.
Если же нужно создать либку не для стандратной dll, то гугл, как всегда, легко помогает. Заострю внимание на том, что импортить либку нужно обязательно утилитами, прилагаемыми к компилятору, так как у разных компиляторов разный ABI.
Если же нужно создать либку не для стандратной dll, то гугл, как всегда, легко помогает. Заострю внимание на том, что импортить либку нужно обязательно утилитами, прилагаемыми к компилятору, так как у разных компиляторов разный ABI.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Я знаю, где они обычно лежат. Но в этом экземпляре их там мало, а для gdi32 нет.
Писать можно на чём угодно, но зачем же так себя ограничивать? Пиши на c.
- Romeo
- Сообщения: 3091
- Зарегистрирован: 02 мар 2004, 17:25
- Откуда: Крым, Севастополь
- Контактная информация:
Кривая версия MinGW, значит. Переустанови. Я вообще использую утилитку mingw-get для этих целей. Она вытаскивает сама с сайта нужные пакейджи и устанавливает. А так же её можно периодически запускать, она будет проверять апдейты.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
А где взять не кривую? На 64 бита для винды.
Писать можно на чём угодно, но зачем же так себя ограничивать? Пиши на c.
Нужно установить Platform SDK для Windows. Он скачивается с сайта Microsoft и устанавливается отдельно или поставляется вместе с Visual Studio. В нём самый полный набор библиотечных файлов для Windows.
Поумнеть несложно, куда труднее от дури избавиться.
- Romeo
- Сообщения: 3091
- Зарегистрирован: 02 мар 2004, 17:25
- Откуда: Крым, Севастополь
- Контактная информация:
Это неверный ответ. Platform SDK содержит либы, созданные компилятором MS Visual Studio. Такие либы не подходят для MinGW, так как у этих компиляторов разный ABI.
Как решить проблему я уже написал. Нужно поставить нормальную версия MinGW. Лучше всего воспользоваться утилитой mingw-get.
Как решить проблему я уже написал. Нужно поставить нормальную версия MinGW. Лучше всего воспользоваться утилитой mingw-get.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Есть специальная утилита coff2oem, которая конвертирует LIB-файлы из одного бинарного формата в другой. Она входит в пакет компилятора Borland C++. С её помощью можно преобразовывать LIB-файлы из Platform SDK Microsoft в ОЕМ-формат, который используют другие компиляторы и компоновщики. Там же имеется утилита implib, которая создаёт LIB-файлы (библиотеки импорта) из DLL в формате ОЕМ.
Поумнеть несложно, куда труднее от дури избавиться.