Каталог вывода файла C ++ в Eclipse - PullRequest
0 голосов
/ 10 января 2012

Я использую Eclipse в качестве IDE для программирования на C ++. В моей системе у меня есть домашний сетевой каталог и раздел данных. Я хочу, чтобы проект хранился в домашнем каталоге (который резервируется нашим администратором), но вычисления должны быть выполнены на разделе данных. Как я могу это сделать?

Я уже выяснил, как изменить расположение сборки в соответствии с артефактами сборки, но файлы, которые я генерирую в своем коде C ++ (например, fstream f; f.open("filename");), хранятся в каталоге проекта в моей домашней папке.

Одна из возможностей - собрать из Eclipse, а затем запустить бинарный файл из консоли. Но это не так приятно, как просто нажать «Run».

Я надеюсь, что кто-то может мне помочь.

Ответы [ 2 ]

0 голосов
/ 10 января 2012

Вам нужно найти что-то, что называется «Working Dir / Path» или подобное. (Понятия не имею, как зовут Eclipse)

Обратите внимание, что это также может повлиять на загрузку динамических библиотек.

Другой вариант заключается в том, чтобы в вашей Программе была опция конфигурации, и чтобы ваш код обрабатывал установку путей вдоль строк (не проверено! Рассматривается как псевдокод!)

f.open((path / filename).c_str());             // using boost::filesystem 
f.open((path + PATH_SEP + filename).c_str());  // using std::string 
0 голосов
/ 10 января 2012

Вы открываете файлы в текущем рабочем каталоге. Вы можете либо использовать абсолютные пути при указании имени файла, либо вы можете сделать chdir перед созданием / открытием файлов. Вам также следует избегать жесткого кодирования имен файлов в коде. Вместо этого вы можете указать имена файлов, используя файлы конфигурации, переменные среды, аргументы командной строки и т. Д. Обратите внимание, что вы также можете указать дополнительные аргументы командной строки в Eclipse, которые будут передаваться вашему исполняемому файлу при отладке.

...