2016-03-28 25 views
1

Başka bir CMake projesine (tümleştirici) bağlı bir CMake projem var (myapp). Integrator projesi ExternalProject_Add aracılığıyla bildirildi ve ben, entegratör kodunun hangi sürümünün oluşturulacağını belirtmek için GIT_TAG parametresini kullanıyorum. Bu online çalışırken harika çalışıyor. Ancak, çevrimdışı olduğumda başarısızlık sorunlarıyla karşılaşıyorum. Repo'nun bir kopyasını daha önceden indirmiş olsa bile, git repo'ya ulaşamazsa, yapı her zaman başarısız olur. CMake'in GIT_TAG repo'ya ulaşmasını durdurabilir miyim ve sadece son çevrimiçi olduğumda daha önce indirmiş olduğu kodu kullanarak oluşturmayı başarabilir miyim?CMake yapı bağımlılık durumuna ulaşamazsa başarısız olur.

+0

UPDATE_DISCONNECTED 1 'seçeneğini ayarlama hakkında ne düşünüyorsunuz? (bkz. [docs] (https://cmake.org/cmake/help/v3.2/module/ExternalProject.html)) Dokümanların dediği gibi, "UPDATE_DISCONNECTED ayarlanmışsa, güncelleme adımı otomatik olarak Ana hedef: Güncelleme adımı hala bir adım hedef olarak eklenebilir ve manuel olarak çağrılabilir.Bu, ağ bağlantısı kesildiğinde projeyi oluşturmaya izin vermek istiyorsanız yararlıdır (indirme adımı için ağa hala ihtiyacınız olabilir). Bu, varsayılan olarak devre dışıdır. " –

+0

Teşekkürler, bunu deneyeceğim. Kesinlikle umut verici geliyor. Bu dokümanlar sayfasını birçok kez okudum ve bu parametreyi görmedim. İç çekmek. – Stuart

+0

UPDATE_DISCONNECTED tam aradığım şeydi. Büyük teşekkür, @DanMasek! – Stuart

cevap

1

ExternalProject belgelerine dayanarak, UPDATE_DISCONNECTED adlı bir seçenek vardır. UPDATE_DISCONNECTED ayarlanır

ise ana hedef bina otomatik olarak güncelleme adım yürütülmez. Güncelleme adımı hala bir adım hedefi olarak eklenebilir ve manuel olarak çağrılabilir. ağından bağlantısı kesildiğinde projeyi oluşturmaya izin vermek istiyorsanız, bu yararlıdır (hala yükleme adımına ihtiyacınız olabilir). Bu , varsayılan olarak devre dışıdır.

nedenle, çevrimdışı çalışma edebilmek için sırayla ExternalProject_Add bildiriye

UPDATE_DISCONNECTED 1 

ayar seçeneği eklemek gerekir.

İlgili konular