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.
1
A
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
- 1. Unity.ResolutionFailedException - bağımlılık Çözünürlük başarısız
- 2. başarısız olur.
- 3. Yeni ortaya çıkarılan kod olduğunda yapı nasıl başarısız olur?
- 4. CMake: Yapı araç zincirini belirleme
- 5. Birim testler başarısız olduktan sonra görsel stüdyo oluşturma başarısız olur
- 6. Django formu is_valid() başarısız olur
- 7. Node.js: NPM Yükleme Başarısız Olur
- 8. calloc başarısız olur ve NULL
- 9. FormsAuthentication.Authenticate kimlik doğrulaması başarısız olur
- 10. clang try catch başarısız olur
- 11. flake8/pylint başarısız olur, InvocationError
- 12. eglCreateWindowSurface, java.lang.IllegalArgumentException ile başarısız olur
- 13. cmake android ndk ile başarısız oluyor
- 14. Bir açısal js sözü reddedilmez ve başarısız olur ne olur?
- 15. Heroku push derlemek için başarısız olur. Hata, node-sass'a işaret ediyor. Olası bağımlılık uyuşmazlığı, günlük kaydı
- 16. İki bağımlılık için Gradle derlemesi başarısız oldu
- 17. Android/Gradle build başarısız oldu: Bağımlılık bulunamadı
- 18. Qt 5'i derlemek, uyarı almak "Yapı büyük olasılıkla başarısız olur."
- 19. TFS 2010 RC: Düşük kod kapsamı için bir yapı nasıl başarısız olur?
- 20. CMake
- 21. NUnit sınama, TeamCity'de başarısız olur, ancak yerel olarak geçer
- 22. ColdFusion IsImageFile jpg dosyası için başarısız olur
- 23. Subselect başarısız olur, ancak görünüm olarak çalışır.
- 24. Neden decltype varlığında kapsam çözünürlüğü başarısız olur?
- 25. Mocha Sınaması, AssertionError ile Başarısız Olur
- 26. Bir shared_ptr'nin yapıcısı başarısız olursa ne olur?
- 27. MediaRecorder start(), çok hızlı çağrılırsa başarısız olur
- 28. System.loadLibrary() linux (RPi) başarısız olmasına neden olur?
- 29. Uzaktan Jenkins program yürütme başarısız olur
- 30. Oyun Merkezi davetiyesi hemen başarısız olur
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. " –
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
UPDATE_DISCONNECTED tam aradığım şeydi. Büyük teşekkür, @DanMasek! – Stuart