Проект Netbeans от Mac до Windows - PullRequest
       31

Проект Netbeans от Mac до Windows

5 голосов
/ 26 октября 2011

Я создал CPP-проект Netbeans на своем Mac и загрузил его в git.У проекта есть соавторы, которые используют Windows.

Когда я помещал свой проект в github, я также помещал информацию о make-файле (весь проект).Теперь соавторы получают ошибки сборки, потому что ссылка содержит мои пути к файлам Mac.

На машине Windows установлен Cygwin.

  1. Как мне решить эту проблему?
  2. Как сделать ее независимой от платформы?
  3. Что я (и соавторы) должны сделать, чтобы не влиять на других работников?

ОТВЕТ : Netbeans имеет параметр (в свойствах проекта в c ++), чтобы путь к файлу был абсолютным или относительным.Так что все, что мне нужно было сделать, это установить относительную опцию и нажать изменения.Проект начал работать для всех!ВОЙЛА !!!!!!!!

Ответы [ 3 ]

3 голосов
/ 02 ноября 2011

Netbeans имеет параметр (в свойствах проекта в c ++), чтобы путь к файлу был абсолютным или относительным. Так что все, что мне нужно было сделать, это установить относительную опцию и нажать изменения. Проект начал работать для всех! ВОЙЛА !!!!!!!!

1 голос
/ 30 ноября 2013

Параметр для относительных путей к файлам фактически НЕ в свойствах проекта!Вместо этого он находится в верхней строке меню. Выберите «Инструменты», затем «Параметры», затем перейдите на вкладку «C / C ++», и второе поле внизу «Режим пути к файлу», выберите «Всегда относительно»

1 голос
/ 26 октября 2011

Я обнаружил, что файлы проекта, сгенерированные NetBeans для C ++, довольно неудобны и не очень удобны для сопровождения людьми.И хотя они имеют тенденцию ссылаться на пути относительно корня проекта (облегчая копирование проекта в разные каталоги), слишком много файлов проекта нужно поддерживать.И вы уверены, что они не работают.

Я не знаю, позволяет ли NetBeans указывать переменные среды для путей в диалоговых окнах настроек проекта.Насколько я могу судить, материал макросов / переменных в значительной степени недокументирован.Но если вы знаете, как это сделать, то определите все зависимости пути к файлу с помощью переменной среды вместо жестко заданного пути в окне настроек проекта.Удаленным разработчикам нужно только переопределить переменные среды на своем компьютере.

Но я думаю, что лучшее решение - не использовать автоматически сгенерированный MakeBile NetBeans из настроек проекта.Вместо этого объявите свой собственный Makefile и создайте тип проекта NetBeans из «существующего Makefile».Я обнаружил, что это работает очень хорошо.

Тогда у вас может быть строка в верхней части вашего Makefile:

include common.inc

Где «common.inc» включает все жестко закодированные пути к библиотекам, которые зависят от машины.Вот мой пример:

BOOST_INCLUDE := -I/home/jselbie/lib/boost_1_46_1
OPENSSL_INCLUDE := -I/home/jselbie/lib/openssl

И тогда мой Makefile ссылается только на эти каталоги по имени переменной.И поэтому, когда я перемещаю проект по разным машинам с разными конфигами, мне просто нужно обновить common.inc.

А потом, если кто-то еще хочет использовать NetBeans для компиляции моего проекта, ему просто нужно создать NetBeansпроект из опции "существующий Makefile".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...