Использование Visual Studio 2022 для разработки, развертывания и отладки на Raspberry PIC#

Место общения программистов C#
Ответить
Anonymous
 Использование Visual Studio 2022 для разработки, развертывания и отладки на Raspberry PI

Сообщение Anonymous »

Я новичок в разработке на Raspberry Pi и пытаюсь настроить его, чтобы можно было создавать несколько консольных приложений без интерфейса в Visual Studio 2022 с использованием C# и .Net Core 8. Я занимаюсь разработкой программного обеспечения для Windows на C# с тех пор и всегда работал в Visual Studio — я бы предпочел продолжать использовать его в этом проекте, вместо того, чтобы осваивать новый инструмент разработки, такой как VS Code.
< р>Мне удалось установите ОС Pi (32-разрядную версию на Pi 3B+), а также SSH, используя ключи RSA, среду выполнения .Net и отладчик, используя следующие команды:

Код: Выделить всё

# Initial Update
sudo apt-get update
sudo apt-get full-upgrade

# Configure SSH RSA Key
mkdir -p ~/.ssh
chmod 700 ~/.ssh
echo "[Contents of %USERPROFILE%\.ssh\id_rsa.pub on your PC]" >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
exit
ssh admin@devpi

# DotNet 8 Runtime
wget https://dot.net/v1/dotnet-install.sh
chmod +x dotnet-install.sh
./dotnet-install.sh --channel 8.0
echo 'export DOTNET_ROOT=$HOME/.dotnet' >> ~/.bashrc
echo 'export PATH=$PATH:$HOME/.dotnet' >> ~/.bashrc
source ~/.bashrc
dotnet --info

# DotNet Debugger
curl -sSL https://aka.ms/getvsdbgsh | bash /dev/stdin -r linux-arm -v latest -l ~/vsdbg

Код: Выделить всё

dotnet --info
возвращается с ожидаемыми результатами. Пока все хорошо.
Я создал простое консольное приложение Hello World и пытаюсь выяснить, как развернуть его на Pi и удаленно отлаживать его там всякий раз, когда я нажимаю F5. . К сожалению, после пары дней безрезультатных результатов с Google, ChatGPT, YouTube и т. д. я готов сдаться.
В файле проекта я установил его нужно собрать для 32-битной среды Linux следующим образом:

Код: Выделить всё

linux-arm
true

У меня также есть настройка сценария после сборки для копирования двоичных файлов на Pi следующим образом:

Код: Выделить всё

scp -r ./bin/Debug/net8.0/linux-arm/* admin@devpi:/home/admin/ConsoleApp1
Наконец, файл launch.json в моем проекте выглядит следующим образом:

Код: Выделить всё

{
"profiles": {
"ConsoleApp1": {
"commandName": "Project",
"workingDirectory": "/home/admin/ConsoleApp1",
"remoteDebugEnabled": true,
"remoteDebugMachine": "devpi:22",
"authenticationMode": "None"
}
}
}
К сожалению, он по-прежнему ищет папку на моем локальном компьютере, а не на удаленном Raspberry Pi.
Я бы предпочел избегать необходимость вручную публиковать и развертывать программное обеспечение, затем запускать приложение на Pi и подключать удаленный отладчик. Помимо того, что это головная боль, это не позволяет мне отлаживать код запуска.
Должен быть более простой способ. Может ли кто-нибудь указать мне правильное направление?

Подробнее здесь: https://stackoverflow.com/questions/792 ... spberry-pi
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»