CMake ExternalProject ਡਾਊਨਲੋਡਾਂ ਲਈ ਪਰਾਕਸੀ ਸੈਟਿੰਗਾਂ
ExternalProject ਪਿੱਛੇ ਦੀ ਪ੍ਰਕਿਰਿਆ ਅਤੇ ਡਾਊਨਲੋਡ ਕਦਮ ਦੀ ਪਛਾਣ ਕਰੋ, ਇਹ ਮੰਨਣ ਤੋਂ ਪਹਿਲਾਂ ਕਿ ਸਫਲ CMake ਸੰਰਚਨਾ ਸਾਬਤ ਕਰਦੀ ਹੈ ਕਿ ਬਾਅਦ ਦੇ ਨਿਰਭਰਤਾ ਡਾਊਨਲੋਡ ਉਹੀ ਰਾਹ ਲੈਂਦੇ ਹਨ।
CMake ਸਫਲਤਾਪੂਰਵਕ ਸੰਰਚਿਤ ਹੁੰਦਾ ਹੈ। ਬਿਲਡ ਬਾਅਦ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ, ਇੱਕ ਬਾਹਰੀ ਨਿਰਭਰਤਾ ਡਾਊਨਲੋਡ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ ਅਤੇ ਪਰਾਕਸੀ ਉੱਤੇ ਫੇਲ੍ਹ ਹੁੰਦਾ ਹੈ। ਪਿਛਲੀ ਸਫਲਤਾ ਨੇ ਉਹ ਡਾਊਨਲੋਡ ਸ਼ਾਇਦ ਬਿਲਕੁਲ ਨਹੀਂ ਚਲਾਇਆ ਸੀ।
ExternalProject_Add() ਅਜਿਹੇ ਕਦਮ ਬਣਾਉਂਦਾ ਹੈ ਜੋ ਬਿਲਡ ਦੌਰਾਨ ਚੱਲ ਸਕਦੇ ਹਨ। ਉਹ ਕਦਮ ਸ਼ੁਰੂ ਕਰਨ ਵਾਲੀ ਪ੍ਰਕਿਰਿਆ ਦਾ ਵਾਤਾਵਰਣ ਮੁੱਖ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਸੰਰਚਿਤ ਕਰਨ ਵਾਲੇ ਟਰਮੀਨਲ ਜਾਂ IDE ਤੋਂ ਵੱਖਰਾ ਹੋ ਸਕਦਾ ਹੈ। CI ਵਿੱਚ ਇਹ ਅੰਤਰ ਖੁੰਝਣਾ ਆਸਾਨ ਹੈ, ਜਿੱਥੇ ਸੰਰਚਨਾ ਅਤੇ ਸੰਕਲਨ ਵੱਖਰੇ ਕੰਮ ਹੋ ਸਕਦੇ ਹਨ।
ਨੈੱਟਵਰਕ ਕਾਰਵਾਈ ਦੀ ਪਛਾਣ ਕਰੋ
- URL ਡਾਊਨਲੋਡ CMake ਦਾ ਡਾਊਨਲੋਡ ਰਾਹ ਵਰਤਦਾ ਹੈ।
- Git ਸਰੋਤ ਆਪਣੀ ਸਮਰਥਿਤ ਸੰਰਚਨਾ ਵਾਲੀ Git ਢੋਆ-ਢੁਆਈ ਨੂੰ ਸੱਦਾ ਦਿੰਦਾ ਹੈ।
- ਕਸਟਮ
DOWNLOAD_COMMANDਪ੍ਰੋਜੈਕਟ ਵੱਲੋਂ ਦਿੱਤਾ ਗਿਆ ਕੋਈ ਵੀ ਪ੍ਰੋਗਰਾਮ ਵਰਤਦਾ ਹੈ।
ਇੱਕ ਪ੍ਰੋਗਰਾਮ ਦੀ ਪਰਾਕਸੀ ਸੈਟਿੰਗ ਤਿੰਨੇ ਸੰਰਚਿਤ ਕਰਦੀ ਹੈ ਅਜਿਹਾ ਨਾ ਮੰਨੋ। ਨਿਰਭਰਤਾ ਦਾ URL ਬਦਲਣ ਤੋਂ ਪਹਿਲਾਂ ਫੇਲ੍ਹ ਹੋਏ ਕਦਮ ਦਾ ਹੁਕਮ ਅਤੇ ਗਲਤੀ ਪੜ੍ਹੋ।
ਜੇ ਚੁਣਿਆ ਗਿਆ ਡਾਊਨਲੋਡਰ ਪਰਾਕਸੀ ਵਾਤਾਵਰਣ ਚਰ ਸਮਰਥਿਤ ਕਰਦਾ ਹੈ, ਤਾਂ ਉਹ ਉਸ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਦਿਓ ਜੋ ਉਹ ਕਦਮ ਅਸਲ ਵਿੱਚ ਚਲਾਉਂਦੀ ਹੈ। ਜਿਨ੍ਹਾਂ ਜਨਤਕ ਡਾਊਨਲੋਡਾਂ ਦਾ ਕਲਾਇੰਟ HTTP ਪਰਾਕਸੀ ਸਵੀਕਾਰ ਕਰਦਾ ਹੈ, ਉਨ੍ਹਾਂ ਲਈ ਉਹ ਰਾਹ ਮਨਜ਼ੂਰ ਹੋਣ ’ਤੇ HTTP ਪਰਾਕਸੀ ਸੂਚੀ ਐਂਡਪੁਆਇੰਟ ਉਮੀਦਵਾਰ ਦਿੰਦੀ ਹੈ। ਸਮਾਨ ਨਾਮ ਵਾਲਾ ਆਮ CMake ਕੈਸ਼ ਚਰ ਭੇਜਣਾ ਆਪਣੇ ਆਪ ਚਾਈਲਡ ਪ੍ਰਕਿਰਿਆ ਦਾ ਵਾਤਾਵਰਣ ਚਰ ਸੈੱਟ ਕਰਨਾ ਨਹੀਂ ਹੁੰਦਾ।
FetchContent ਤੋਂ ਅੰਤਰ ਵੀ ਰੱਖੋ: ਇਸ ਦੀ ਆਮ ਨਿਰਭਰਤਾ ਭਰਤੀ ਸੰਰਚਨਾ ਦੌਰਾਨ ਹੁੰਦੀ ਹੈ, ਇਸ ਲਈ ਉੱਥੇ ਕੰਮ ਕਰਨ ਵਾਲੀ ਵਿਧੀ ExternalProject ਬਿਲਡ ਕਦਮ ਦਾ ਵਾਤਾਵਰਣ ਸਾਬਤ ਨਹੀਂ ਕਰਦੀ।
ਇਤਿਹਾਸਕ ਰੀਡਾਇਰੈਕਟ ਸੀਮਾ ਤੋਂ ਬਚਣ ਲਈ ਕਸਟਮ ਡਾਊਨਲੋਡਰ ਦੀ ਸਿਫ਼ਾਰਿਸ਼ ਕਰਨ ਵਾਲਾ ਪੁਰਾਣਾ ਜਵਾਬ ਇਸ ਗੱਲ ਦਾ ਸਬੂਤ ਨਹੀਂ ਕਿ ਹਰ ਆਧੁਨਿਕ ਫੇਲ੍ਹਤਾ ਨੂੰ ਨਵਾਂ ਡਾਊਨਲੋਡ ਹੁਕਮ ਚਾਹੀਦਾ ਹੈ। ਜਾਂਚੋ ਕਿ ਮੌਜੂਦਾ ਗਲਤੀ ਰੀਡਾਇਰੈਕਟ, ਪਰਾਕਸੀ ਪ੍ਰਮਾਣਿਕਤਾ, ਸਰਟੀਫਿਕੇਟ ’ਤੇ ਭਰੋਸਾ ਜਾਂ ਸਿਰਫ਼ ਪਹੁੰਚ ਹੈ। ਸੰਬੰਧਿਤ ਰਾਹ ਸੁਧਾਰਦੇ ਸਮੇਂ ਉਮੀਦ ਕੀਤਾ ਆਰਕਾਈਵ ਹੈਸ਼ ਅਤੇ TLS ਪੜਤਾਲ ਬਚਾਓ।