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

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

Войти
Регистрация
Восстановить пароль
 
DarkVortex
102 / 68 / 18
Регистрация: 07.07.2014
Сообщений: 239
#1

Конфликт имен в библиотеках - C++

14.07.2014, 15:44. Просмотров 479. Ответов 5
Метки нет (Все метки)

Здравствуйте. Возникла проблема при одновременном подключении #include <X11/extensions/xf86vmode.h>
и #include "FreeImage.h"
Код ошибки:
C++
1
2
3
4
5
6
In file included from GUIImageManager.h:13:0,
                 from main.cpp:13:
/usr/include/FreeImage.h:139:17: ошибка: conflicting declaration «typedef int32_t BOOL»
In file included from /usr/include/X11/extensions/xf86vmode.h:37:0,
                 from main.cpp:9:
/usr/include/X11/Xmd.h:143:16: ошибка: «BOOL» has a previous declaration as «typedef CARD8 BOOL»
Что делать в такой ситуации? Как разрешить конфликт имен?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.07.2014, 15:44     Конфликт имен в библиотеках
Посмотрите здесь:

конфликт имен - C++
пытаюсь вызвать CButton* button= (CButton*)GetDlgItem(IDC_BUTTON); // пишет что определено в WinUser.h пишет error C2660:...

Конфликт имен при множественном наследовании struct - C++
Уважаемые гуру, помогите разрешить конфликт имён в приведённом ниже примере, не изменяя структуру наследования. Заранее спасибо! ...

Использование имен предопределенных объектов в качестве имен переменных - C++
Есть код: #include &lt;iostream&gt; using namespace std; void func() { int cout; cout &lt;&lt;cout &lt;&lt;endl; }

Область видимости в библиотеках - C++
Есть 2 либы с одинаковыми классами Первая: ----file t1.h ----- #ifndef LOG1_H #define LOG1_H #include &lt;string&gt;

Чтение кода в библиотеках - C++
Итак, я уже давно учусь программированию. И вот, я хочу перейти на новый для себя этап, но столкнулся с проблемой. Я не понимаю писанины в...

Ошибки LNK2001 в библиотеках - C++
Добрый день! Подключил библиотеку SFML к проекту, и в результате получил такие ошибки. Причем, используя Visual Studio 2008 ошибки не...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
14.07.2014, 15:46     Конфликт имен в библиотеках #2
DarkVortex, Объявления ведь в глобальном пространстве имен? Если да, то никак. Править инклуды.
DarkVortex
102 / 68 / 18
Регистрация: 07.07.2014
Сообщений: 239
14.07.2014, 15:49  [ТС]     Конфликт имен в библиотеках #3
Обойдется ли одними инклудами? Если да то какие могут быть последствия? В одном месте BOOL декларируется как unsigned char в другом как int.
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
14.07.2014, 15:52     Конфликт имен в библиотеках #4
DarkVortex, Не факт что обойдется, нужно смотреть глубже. Наличие проблем тоже сходу не сказать.
Voivoid
674 / 277 / 12
Регистрация: 31.03.2013
Сообщений: 1,339
14.07.2014, 16:02     Конфликт имен в библиотеках #5
Не подключать оба хидера в одной единице трансляции, для этого разбить соответствующим образом логику на независимые части

Добавлено через 8 минут
Если библиотека header only, то можно попробовать че-нить типа такого:

C++
1
2
3
namespace xxx {
  #include <header.hpp>
}
но тут надо быть осторожным
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.07.2014, 16:20     Конфликт имен в библиотеках
Еще ссылки по теме:

Работа с классами в динамических библиотеках linux - C++
Всем привет! Никак не могу найти информацию в интернете. Все примеры и описания по подключению динамических библиотек предполагают,...

Использование статических методов класса в динамических библиотеках - C++
Здравствуйте. Прочитав пару тредов, статтей, да поклацав в компилятор у меня получилось слинковать обычную функцию. А как быть с...

Кто-то работал или слышал о библиотеках jrtplib, emiplib? - C++
У меня работа со звуком. Дали мне две библиотеки jrtplib и emiplib, а я об таких даже не слышал. Ребят помогите???

Можно ли Хорошо посмотреть информацию о графическом файле в разных библиотеках? - C++
Есть имя (понятно с правильным путем, но это неважно). Надо узнать Размер этого графического файла. Разумеется можно файл Прочесть и для...

Программирование логики в нативных библиотеках С++ для использования в нескольких видах проектов - C++
Если быть кратким - сам я .Net разработчик, дружу с ООП, Java, Android, но появилась задача, связанная с трудоемкими научными вычислениями,...

конфликт типов - C++
пишу себе Си хедер. как реализовать универсальность одной функции для всех типов?


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

Или воспользуйтесь поиском по форуму:
DarkVortex
102 / 68 / 18
Регистрация: 07.07.2014
Сообщений: 239
14.07.2014, 16:20  [ТС]     Конфликт имен в библиотеках #6
Спасибо nemespace спас положение.
Yandex
Объявления
14.07.2014, 16:20     Конфликт имен в библиотеках
Ответ Создать тему
Опции темы

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