VPN üzerinden uzaktan C++ derleme: araç zincirini ana bilgisayarda tutun
Paylaşımı bağlamak, uzaktan derlemekle aynı şey değildir. Hangi ana bilgisayarın yanıt verdiğini, hangi derleyicinin çalıştığını ve hata ayıklayıcı ile ağın nerede olduğunu kontrol edin.
Paylaşım bağlanıyor, düzenleyici dosyayı açıyor ve derleme hâlâ dizüstü bilgisayarda çalışıyor. Hiçbir hata görünmüyor ve kafa karıştıran tam da bu. Uzak bir yol, uzak bir araç zinciri değildir, ve bir dosyayı bağlama üzerinden okuyabilen düzenleyici, üzerinde yerel derleyiciyi memnuniyetle çağırır. Çözüm, yalnızca baytları değil çalışma alanını taşımaktır.
Bağlanmış bir dizin çalışma alanı değildir
SSH veya SMB üzerinden bağlamak size bir yol verir. Derleyicinin, derleme sisteminin ve hata ayıklayıcının uzak taraftan gelip gelmediği, düzenleyicinin bunları nerede çalıştırmaya karar verdiğine bağlıdır. Birçok kurulum uzak dosyaları okuyup bunları yerel olarak derler, sonra yalnızca sunucuda bulunan bir başlık dosyasında başarısız olur.
Belirti incedir: derleme kısmi sonuçlarla başarılı olur ya da düzenleyicide doğru görünen bir include yolunda kırılır.
Hangi ana bilgisayarın yanıt verdiğini kanıtlayın
Bağlama yerine gerçek bir uzak oturumla bağlanın, ardından o oturumun verdiği terminalde üç salt okunur komut çalıştırın. VS Code SSH rehberi bağlı bir uzak penceredeki terminalin uzak ana bilgisayarda çalıştığını ve aynı oturumun hata ayıklamayı da taşıdığını belgeler. Kuruluş uzak bileşenleri kısıtlıyorsa önce onlar için onay alın.
hostname bulunduğunuz makinenin adını verir, pwd çalışma alanının gerçekte nerede olduğunu gösterir ve command -v c++ kabuğun çalıştıracağı derleyiciyi yazdırır. Üç yanıtın da dizüstü bilgisayarı değil sunucuyu tanımlaması gerekir.
Sürümün veya derleme yapılandırmasının doğru olduğunu kanıtlamazlar. Bunu ayrı bir adım olarak projenin kendi talimatlarıyla karşılaştırın.
Bir değişikliği derleme ve hata ayıklama boyunca izleyin
Uzak çalışma alanında küçük bir değişiklik yapın ve orada kaydedin. Belgelenen derlemeyi aynı dizinden çalıştırın ve çıktının sizin değişikliğinizi yansıttığını, başka bir yerdeki daha eski bir kopyayı değil, doğrulayın. Ardından hata ayıklayıcıyı aynı uzak oturum üzerinden başlatın; ikili dosya yolu ve çalışma dizini sunucunun derleme ağacını göstermelidir. Kaynak yollarının eşleşmesi önemlidir, çünkü değişikliğinizi dizüstü bilgisayar yoluna çözen bir hata ayıklayıcı başka bir dosyayı ayıklıyordur.
Hata ayıklama hedefi yerel ev dizininizle başlayan yollar bildiriyorsa başlatma yapılandırması hâlâ yerel düşünüyordur.
Ağ bağımlılıkları ana bilgisayarda kalır
Derleme ana bilgisayarında başlatılan paket indirme, git işlemi veya test çalıştırması dizüstü bilgisayarınızın VPN oturumunu değil, o ana bilgisayarın ağını ve kimlik bilgilerini kullanır. Dizüstü bilgisayarın özel bir paket aynasına ulaşması, sunucunun ulaşabileceği anlamına gelmez. Derlemenin bir kayıt defterine ihtiyacı varsa sunucunun oraya bir rotası olmalıdır ve bu, düzenleyici ayarı değil güvenlik duvarı konuşmasıdır.
Tersi de test uygulamaları için geçerlidir. Tarayıcınızdan sunucudaki bir hizmete ulaşmak, onaylanmış özel bir yol veya kısıtlı yönlendirme gerektiren ayrı bir bağlantıdır; açık bir dinleyici değildir.
İşi kaybetmeden bağlantıyı kesin
Bağlantı düşmeden önce kaydedin ve commit edin, en azından çalışma ağacını kaydedin. Uzak düzenleme oturumu, çalışan bir derlemenin veya kaydedilmemiş bir tamponun ağ kesintisini atlatacağını vaat etmez. Oturumunuzdan daha uzun yaşaması gereken her şey için projenin desteklediği iş veya oturum akışını kullanın.
İş bölümü o zaman açıktır: dizüstü bilgisayar bir arayüzdür, sunucu çalışma alanına ve araç zincirine sahiptir, VPN ise rotayı sağlar. Dosyaları taşımak ve derlemeyi taşımak iki ayrı karardır.