Скомпилировать предварительно c ++ 98 проект?

Попытка скомпилировать старый (старый) проект cpp. Согласно https://stackoverflow.com/a/13103121/555493, этот проект старше C ++ 98!

Есть ли способ скомпилировать этот проект без какого-либо (незначительного) рефакторинга?

Когда я запускаю команду g++ -std=c++98 -pedantic -ggdb -c file.cxx ошибается с ошибкой fatal error: 'iostream.h' file not found,

Примечание: я не автор оригинального кода. Переход на более современную версию C ++, вероятно, не может быть и речи. Так что сейчас я просто пытаюсь собрать его.

Я использую brew, gcc5, на Mac El Capitan.

gcc --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 8.0.0 (clang-800.0.38)
Target: x86_64-apple-darwin15.6.0
Thread model: posix
InstalledDir:   /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

-2

Решение

Есть ли способ скомпилировать этот проект без какого-либо (незначительного) рефакторинга?

Если вам разрешено добавлять файлы .h в проект, вы можете создать iostream.h со следующим:

#ifndef MY_IOSTREAM_H
#define MY_IOSTREAM_H
#include <iostream>
using namespace std;
#endif

а затем убедитесь, что каталог, в котором находится файл, добавлен в список каталогов для поиска #includeд файлы.

отказ

Это не гарантирует, что вам не придется ничего менять. Кто знает, какие специфичные для платформы функции до C ++ 98 используются в кодовой базе такого старого проекта.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]