2012-05-05 29 views
6

Próbuję zbudować kod źródłowy XobotOS wydany przez Xamarin na Github i używam wytycznych zawartych w dokumencie README.build w folderze głównym. Udało mi się wykonać wszystkie kroki wymienione w pliku readme, ale z jakiegoś powodu drugie wystąpienie zaćmienia nie generuje niczego. Byłbym wdzięczny za każdą pomoc, jaką mogę uzyskać na ten temat. Dzięki.Problemy z budową z XobotOS

Oto kilka innych szczegółów, które mogłyby być użyteczne:

OS: Ubuntu 11.04
Eclipse: Eclipse SDK 4.2 (Juno)
Mono? (Nie jestem pewien, czy prawdopodobnie używam hacked-up wersji zbudowanej ze źródła)

W międzyczasie postaram się pobrać OpenSUSE i spróbować ponownie.

+0

Jest bardzo prawdopodobne, że Xamarin używa openSUSE do budowania XobotOS (weź pod uwagę ich związek z openSUSE w przeszłości), więc możesz spróbować najpierw (jak już próbowałaś), a następnie zaktualizować to pytanie. –

Odpowiedz

0

Ubuntu 11.04 zawiera bardzo starą wersję Mono.

Spróbowałbym użyć Ubuntu 12.04 (lub jeśli to się jeszcze nie powiedzie, użyj PPA direchtex z Ubuntu 12.04) lub, jak już Lex Li zasugerował, wypróbuj openSUSE 12.1.

0

Zbyt ostatnio czytałem o tym samym i po wielu próbach udało się go zbudować w połowie drogi. Poniżej znajduje się konfiguracja, którą mam.

  • Ubuntu: 12.04
  • Eclipse: 3.7.2
  • Mono: 2.10.8.1 (zarówno Eclipse i mono z repo Ubuntu samego)

Tuż po README.build wytycznych. Uzyskanie zaćmienia/wyostrzenia również było dla mnie dość trudne. Przy wszystkich ustawieniach, jak wspomniano, otrzymywałem pusty folder wyjściowy. Odznaczono opcję automatycznego tworzenia kompilacji i dodano ręczną kompilację. Potem to zadziałało dla mnie. Budowanie kodu C# było proste. Ale spróbuj zbudować Skiya i inne biblioteki.

Musiałem wprowadzić drobne zmiany w pliku XobotActivityManager.cs, aby działało. Zmieniono linię poniżej

if (now >= at) { 
    ThreadPool.QueueUserWorkItem ((state) => control.Invoke (dispatch)); 

do

if (now >= at) { 
    if(control.IsHandleCreated) 
     ThreadPool.QueueUserWorkItem ((state) => control.Invoke (dispatch)); 

UPDATE Niedawno próbowałem Eclipse Juno i to już nie działa.