2013-05-17 14 views
6

Przeprowadzam się z Netbeans do Eclipse (w systemie Ubuntu 12.0.4). Mam aplikację C, która składa się z kilku podrzędnych projektów, które są bibliotekami (współużytkowanymi i statycznymi), a także samodzielnymi plikami wykonywalnymi.Budowanie wielomodułowego projektu C (tj. Rozwiązania) z Eclipse CDT

nie mogę dowiedzieć się, jak stworzyć 'macierzystego' projekt foo, który zawiera projekty elementów

  • foobar
  • foofoo
  • barfoo
  • Barbar

Idealnie , Chcę, aby wszystkie "projekty komponentów" zostały utworzone w folderze foo, więc mam Struktura katalogów tak:

  • /ścieżka/do/foo/foobar/(zawiera pliki projektu foobar)
  • /ścieżka/do/foo/foofoo/(zawiera pliki projektu foofoo)
  • /ścieżka/do/foo/barfoo/(zawiera pliki projektu barfoo)
  • /ścieżka/do/foo/Barbar/(zawiera pliki projektu Barbar)

Czy ktoś wie jak mogę osiągnąć tej struktury przy użyciu Eclipse jako IDE (z CDT)?

Ostatnie, ale nie najmniejsze, zamierzam stworzyć moje moduły C za pomocą opcji Autotools. Czy wygenerowane pliki Autotools będą automatycznie aktualizowane, gdy dodaję nowy nagłówek/źródło do modułu - czy też muszę ręcznie obsługiwać pliki Autotool?

Odpowiedz

1

Przyjaciel, Myślę, że nie ma projektu "rodzica" C. Możesz stworzyć normalny projekt C w IDE i dodać wszystkie zależności do podfolderów. Następnie powiedz kompilatorowi swoją procedurę kompilacji za pomocą Makefile. Myślę, że to łatwy sposób, ponieważ miałeś doświadczenie w aplikacji C.

O autotoolach, po aktualizacji/dodaniu/usunięciu pliku projektu, myślę, że musisz zmodyfikować plik Makefile, aby odzwierciedlić zmianę i oczyścić i odbudować swój projekt.

W przypadku innych narzędzi do kompilacji C można użyć kodu buildroot, jeśli chcesz.

1

Najlepszym sposobem na zrobienie tego w czasie zaćmienia jest utworzenie osobnego obszaru roboczego dla projektu np. foo, a następnie dodaj projekty podrzędne (foobar, foofoo, itp.) jako projekty. Jest to na ogół lepsze podejście do zaćmienia zamiast pojedynczego monolitycznego obszaru roboczego. Nie wiem, jak wygląda konkretna struktura zależności dla podprojektów, ale powinieneś być w stanie wyrazić to po prostu używając właściwości projektu Eclipse. Może to obejmować wykonywalny podprojekt , który zależy od bibliotek.

Niestety, nie jestem pewien, czy eclipse cdt zachowa pliki autotools. Jeśli jednak nie, powinno być stosunkowo łatwo zintegrować i używać niektórych plików binarnych automatów, takich jak autoscan i autoheader w komendach eclipse build.

1

Najpierw trzeba do working directory, to należy new project, Then per file lub per class (zgodnie z C++ lub C) dołączania plików, to dużo bezpieczny sposób. inny sposób nie jest czysty, mam doświadczenie. nie używaj ich.