Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
Антикодер
1875 / 852 / 48
Регистрация: 15.09.2012
Сообщений: 3,002
1

Подключение библиотеки созданной в MinGW

17.06.2013, 16:16. Показов 1792. Ответов 6
Метки нет (Все метки)

Идея в следующем компилировать статическую библиотеку на MinGW с использованием C++11, и подключать её к Builder 2007.
Ситуация такая
Создаём статическую библиотеку.
Outers.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#ifndef OUTERS_H_
#define OUTERS_H_
 
#ifdef COMPILING_OUTERS
#define MYDLL_EXPORT  __declspec(dllexport)
#else
#define MYDLL_EXPORT __declspec(dllimport)
#endif
 
namespace share_static
{
extern "C"
class MYDLL_EXPORT Outers
{
    public:
        Outers();
        virtual ~Outers();
        int getNumber();
 
};
 
}
#endif
Outers.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#define COMPILING_OUTERS
#include "Outers.h"
#include <iostream>
namespace share_static
{
extern "C"
Outers::Outers()
{
}
extern "C"
Outers::~Outers()
{
}
extern "C"
int Outers::getNumber()
{
    return 7;
}
 
}
Компилирую(нужно ли показывать опции компилятора в этой теме?), получаю libtest_static.a
и всё приехали такие файлы Builder 2007 не понимает.
когда пытался просто переименовать в libtest_static.lib пишет, что нужен OMF формат.
пытался сделать
Bash
1
> coff2omf libtest_static.a libtest_static.lib
получаю
Bash
1
2
ERROR: COFF error: libtest_static.a
   (coffread.cpp, 1272): reading the long names header
Подскажите пожалуйста, как это правильно делается?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.06.2013, 16:16
Ответы с готовыми решениями:

"Unresolved external" при подключении созданной самим dll библиотеки
Попытка выполнения программы, к которой подключена библиотека dll выдает следующую ошибку: ...

Подключение библиотеки
Здраствуйте. Как мне подключить библиотеку к проекту только 1 раз. тоесть есть у меня 4 срр файла...

Подключение библиотеки
Пишу if (Button == mbLeft) Form1-&gt;Close(); Говорит Unit1.cpp(27): E2451 Undefined symbol...

Подключение библиотеки libcurl
Всем привет. Решил поработать с библиотекой libcurl. Скачал архив, распаковал на рабочий стол. Не...

6
1116 / 787 / 100
Регистрация: 01.02.2011
Сообщений: 1,847
Записей в блоге: 1
17.06.2013, 17:21 2
Экспортированные классы из других сред программирования билдер не понимает. Нужно функции экспортировать.
Можешь ещё сделать также, как в mediainfo. Эта библиотека устроена так, что классы библиотеки можно использовать из разных сред программирования, при этом для ёё использования нужен только .h файл и .dll (никакие .lib не нужны).
1
Эксперт С++
8379 / 6115 / 613
Регистрация: 10.12.2010
Сообщений: 28,556
Записей в блоге: 30
17.06.2013, 19:27 3
Цитата Сообщение от XRuZzz Посмотреть сообщение
статическую библиотеку на MinGW
Ничего не получится при любых раскладах ...
1
Антикодер
1875 / 852 / 48
Регистрация: 15.09.2012
Сообщений: 3,002
17.06.2013, 20:34  [ТС] 4
а есть позитивные мнения?
0
Эксперт С++
8379 / 6115 / 613
Регистрация: 10.12.2010
Сообщений: 28,556
Записей в блоге: 30
17.06.2013, 20:36 5
Позитивная идея юзать Qt или VC++ или BuilderXE3(4) под x64 и не парить мозг с прикруткой...
0
XRuZzz
17.06.2013, 20:41  [ТС]
  #6

Не по теме:

Цитата Сообщение от Avazart Посмотреть сообщение
Позитивная идея юзать Qt или VC++ или BuilderXE3(4) под x64 и не парить мозг с прикруткой...
то есть вы советуете увольняться с работы :D

0
Эксперт С++
8379 / 6115 / 613
Регистрация: 10.12.2010
Сообщений: 28,556
Записей в блоге: 30
17.06.2013, 20:45 7
Ну так пиши без С++11 и пусть работодатель не возникает "что купил на том и пишем..."
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.06.2013, 20:45

подключение dll библиотеки
как подключить dll библиотеку в билдер с++ через опции проекта

rxlib. Подключение библиотеки
Народ, привет. Кто нибудь знает, как можно подключить библиотеку rxlib? Вот ссылка на файл:...

Подключение к проекту x64 библиотеки
Здравствуйте. Есть DLL 64 битная. То есть обычный implib его не возьмёт(на выходе получается файл...

Подключение MFC библиотеки к C++ Builder 6
Всем привет! Возникла необходимость подключить к проекту на C++ Builder 6 - MFC библеотеку. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.