Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
monolit
182 / 182 / 21
Регистрация: 24.03.2011
Сообщений: 657
Завершенные тесты: 1
#1

Создание статической библиотеки из нескольких файлов с несколькими заголовочными файлами - C++

24.12.2013, 15:10. Просмотров 591. Ответов 9
Метки нет (Все метки)

В общем, имеется несколько классов, как водится - каждый имеет .h/.cpp.
Решил собрать все это дело в библиотеку, но вот беда - все равно приходится таскать помимо lib все хидеры.
Как можно этого избежать? К примеру, собрать все включения в отдельный .h, и таскать только его (помимо lib)? ибо он все равно требует заголовочные файлы, как будто их не видит.

Добавлено через 17 часов 3 минуты
Неужели никто не сталкивался?)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.12.2013, 15:10     Создание статической библиотеки из нескольких файлов с несколькими заголовочными файлами
Посмотрите здесь:

Непонятка с заголовочными файлами C++
Создание статической библиотеки C++
Создание статической библиотеки в MinGw(code::blocks) C++
В чем разница между заголовочными файлами и библиотеками C++
C++ Как пользоваться заголовочными файлами и использовать несколько исходных файлов?
C++ Ошибка с заголовочными файлами
Подключение статической библиотеки в VS C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
aLarman
641 / 562 / 89
Регистрация: 13.12.2012
Сообщений: 2,109
24.12.2013, 15:16     Создание статической библиотеки из нескольких файлов с несколькими заголовочными файлами #2
в хедере ф-ции объявили, в lib реализация, куда еще меньше то

Добавлено через 1 минуту
Цитата Сообщение от monolit Посмотреть сообщение
К примеру, собрать все включения в отдельный .h, и таскать только его (помимо lib)?
так а что мешает то? все объявления ф-ций, классов, типов данных в один файл собрать?
monolit
182 / 182 / 21
Регистрация: 24.03.2011
Сообщений: 657
Завершенные тесты: 1
24.12.2013, 15:48  [ТС]     Создание статической библиотеки из нескольких файлов с несколькими заголовочными файлами #3
Для каждого класса свои .h+.cpp
Вы предлагаете запихать все содержимое всех хедеров и cpp в один .h/.cpp файл?
если учесть, что код я иногда изменяю, и все такое, то это не очень удобно. Так вот нужно что-то сделать с этой кучей .h - к примеру, как писал выше, их ПОДКЛЮЧИТЬ в отдельный .h. Но в этом случае программа все равно требует эти самые подключенные .h (все). Не верю, что выхода нет, вон другие библиотеки видел, там количество файлов не чета моему (в исходниках), а носить нужно всего lib + h + dll;
aLarman
641 / 562 / 89
Регистрация: 13.12.2012
Сообщений: 2,109
24.12.2013, 15:54     Создание статической библиотеки из нескольких файлов с несколькими заголовочными файлами #4
собирайте dll тогда
monolit
182 / 182 / 21
Регистрация: 24.03.2011
Сообщений: 657
Завершенные тесты: 1
24.12.2013, 15:59  [ТС]     Создание статической библиотеки из нескольких файлов с несколькими заголовочными файлами #5
Это придется для каждой функции писать __declspec(dllexport) тогда?
aLarman
641 / 562 / 89
Регистрация: 13.12.2012
Сообщений: 2,109
24.12.2013, 16:00     Создание статической библиотеки из нескольких файлов с несколькими заголовочными файлами #6
получается так , сам не юзал, к сожалению, dll-ки
monolit
182 / 182 / 21
Регистрация: 24.03.2011
Сообщений: 657
Завершенные тесты: 1
24.12.2013, 16:09  [ТС]     Создание статической библиотеки из нескольких файлов с несколькими заголовочными файлами #7
В общем, ладно с этим declspec, с несколькими заголовочными то чего делать?

Добавлено через 17 секунд
Вот в чем вопрос..
bobrik_
0 / 0 / 0
Регистрация: 05.10.2015
Сообщений: 1
20.12.2016, 15:21     Создание статической библиотеки из нескольких файлов с несколькими заголовочными файлами #8
У меня была похожая проблема в MSVS2015. Решил так:
мегабиблиотека.lib кидаем в папку "ваш_путь_до_студии\Microsoft Visual Studio 14.0\VC\lib",
мегабиблиотека.h в папку "ваш_путь_до_студии\Microsoft Visual Studio 14.0\VC\include"
и подключаем по мере необходимости в проекты:
#include <мегабиблиотека.h>
MrGluck
Ворчун
Эксперт CЭксперт С++
6676 / 3857 / 511
Регистрация: 29.11.2010
Сообщений: 10,217
20.12.2016, 16:01     Создание статической библиотеки из нескольких файлов с несколькими заголовочными файлами #9
Соберите всё в один проект и подключайте его к решению по мере необходимости.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.12.2016, 17:03     Создание статической библиотеки из нескольких файлов с несколькими заголовочными файлами
Еще ссылки по теме:

C++ Создание статической библиотеки lib
Подключение статической lib-библиотеки C++
Создание статической библиотеки в DEV C++ C++
C++ Работа с заголовочными файлами
Сборка статической библиотеки C++

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

Или воспользуйтесь поиском по форуму:
GbaLog-
Не Эксперт C++
2540 / 1079 / 272
Регистрация: 24.08.2014
Сообщений: 3,954
Записей в блоге: 1
Завершенные тесты: 2
20.12.2016, 17:03     Создание статической библиотеки из нескольких файлов с несколькими заголовочными файлами #10
Можно так:
class1.hpp
class1.cpp

class2.hpp
class2.cpp

classN.hpp
classN.cpp

stdafx.hpp
C++
1
2
3
#include "class1.hpp"
#include "class2.hpp"
#include "class3.hpp"
main.cpp
C++
1
2
3
#include "stdafx.hpp"
 
int main() {}
Но, ИМХО, включение всех классов даже там, где они не нужны неправильно.
Yandex
Объявления
20.12.2016, 17:03     Создание статической библиотеки из нескольких файлов с несколькими заголовочными файлами
Ответ Создать тему
Опции темы

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