Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Выбор ОС на этапе компиляции, Как понять под какой ОС компилируем? 
V
    Опции темы
shchur
Дата 19.4.2009, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 15.2.2009

Репутация: нет
Всего: нет



Доброго времени суток!
Друзья, подскажите если знаете, каким образом можно определить тип операционной системы в коде программы во время компиляции. А точнее какие макросы для этого определяются в ОС?
Суть проблемы в том, что есть ОС МСВС и ОС Alt Linux 4.0 Desktop. Необходимо компилировать одну и туже программу под эти операционные системы, а заголовочные файлы STL несколько отличаются в этих ОС. Например slice_array.h лежит в разных каталогах.
Хотелось бы увидеть что-то вроде этого:

Код

#ifdef ALTLINUX_OS
#include <bits/slice_array.h>
#else
#include <std/slice_array.h>
#endif


PM MAIL   Вверх
vinick
Дата 19.4.2009, 20:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 9.6.2005

Репутация: 4
Всего: 22



Код

#include <valarray>

Должно помочь в вашем случае.

А вобще AFAIK нет макросов различающих версии Linux. Если очень надо можно на этапе компиляции определять версию компилятора и libc.

PM MAIL ICQ Jabber   Вверх
shchur
Дата 20.4.2009, 22:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 15.2.2009

Репутация: нет
Всего: нет



Цитата


Код

#include <valarray>


Должно помочь в вашем случае.

А вобще AFAIK нет макросов различающих версии Linux. Если очень надо можно на этапе компиляции определять версию компилятора и libc.


Спасибо за valarray, завтра обязательно попробую. А если не затруднит, напишите каким образом можно определить версию компилятора и libc. Если нельзя разделить ОС, то будем делить по версии компилятора, ведь в данных операционках они разные.
PM MAIL   Вверх
vinick
Дата 20.4.2009, 23:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 9.6.2005

Репутация: 4
Всего: 22



Цитата(shchur @  20.4.2009,  22:56 Найти цитируемый пост)
А если не затруднит, напишите каким образом можно определить версию компилятора и libc. Если нельзя разделить ОС, то будем делить по версии компилятора, ведь в данных операционках они разные. 


http://predef.sourceforge.net/index.php - справочник по таким макросам для различных компиляторов, библиотек  и прочего
PM MAIL ICQ Jabber   Вверх
shchur
Дата 20.4.2009, 23:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 15.2.2009

Репутация: нет
Всего: нет



Спасибо.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.0420 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.