CMake не может найти исходный каталог при запуске из bash-скрипта в WSL

Я использую версию подсистемы Windows для Linux для Ubuntu. Там я создал простой проект cmake и создал скрипт, который избавил меня от необходимости печатать

cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug ../../

каждый раз, когда я хочу собрать. Мой CMakeLists.txt существует в двух каталогах выше (таким образом ../../). Сборка работает нормально, если я ввожу указанную выше команду вручную ИЛИ запускаю скрипт powershell с той же самой командой , точной и ничем иным.

Но при запуске этого bash-скрипта внутри WSL

#!/bin/bash
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug ../../

я получаю сообщение об ошибке " does not exist.source directory "/mnt/c/dev-files/C/Practice/.

Похоже, что bash-скрипт испортил вывод ошибок cmake, поэтому я предполагаю, что скрипт выполняет cmake или неправильно передает аргументы, но я понятия не имею, почему.

1
задан 31 July 2019 в 18:34

1 ответ

При испытании других команд я заметил, что некоторые другие аргументы команды имели \r в окончаниях строки, на которые указывают ошибки.

Проблема была то, что сценарий имел окончания строки окон, как steeldriver прокомментировал в вопросе.

Это была en легкая фиксация с dos2unix команда, исключая:

dos2unix script.sh

1
ответ дан 7 December 2019 в 14:59

Другие вопросы по тегам:

Похожие вопросы: