https://itsfoss.com/ssh-into-raspberry/
RPi는 기본적으로 SSH 연결이 안 되도록 설정되어 있다. 이것을 먼저 가능하게 설정해야 한다.
건물 에너지, IT와 여러 가지 글들
https://itsfoss.com/ssh-into-raspberry/
RPi는 기본적으로 SSH 연결이 안 되도록 설정되어 있다. 이것을 먼저 가능하게 설정해야 한다.
라즈베리파이3에 WINDOWS 10 IOT CORE 설치
라즈베리파이3 WINDOWS 10 IOT CORE 개발 환경 구축
여기서, 개발 PC를 “개발자 모드”로 변경한다는 것은 원격접속 기능을 사용할 수 있게 한다.
WINDOWS 10 IOT CORE에 POWERSHELL로 연결하기
1 |
Enter-PSSession-ComputerName192.168.1.202 -Credential192.168.1.202\Administrator |
WINDOWS 10 IOT CORE에 SSH로 연결하기
Putty 접속할 때, SSH2_MSG_UNIMPLEMENTED packet error가 발생하면, To solve the issue, open the configuration for the connection and navigate to SSH -> Kex. In the “Algorithm selection policy”, move the “Diffie-Hellman group 14” entry to the first position in the list. (SSH2_MSG_UNIMPLEMENTED packet error with PuTTY and RHEL 7.2 를 참조)한다.
지원하는 보드
https://docs.microsoft.com/en-us/windows/iot-core/tutorials/quickstarter/PrototypeBoards
[참고] 라즈베리파이 3B+는 별도로 설치해야 한다. 참고 사이트는 여기이다.
다운로드하는 곳
https://www.microsoft.com/en-us/software-download/windows10IoTCore
Windows 10 IoT Core Dashboard를 내려받아서, 라즈베리파이에 설치한다. 이 때, 보안경고가 뜨면서 대시보드가 설치되지 않을 수 있다.
실행창에 regedit를 입력 후 레지스터 편집기로 들어가서..
1 |
\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Security\TrustManager\PromptingLevel |
Internet, Localintranet, MyComputer 모두 Enabled로 변경하니 설치가 되는군요. (참고로 이 방법은 마이크로소프트 사에서 권장하지 않음)
과거(2008) 컴파일한 것은 32비트용이었다.
최근(2019) 컴파일해야 하는 것은 64비트용이다.
기존의 프로젝트 파일을 수정하기보다 새로 프로젝트 파일을 만들어서 했다.
Debug 모드가 아니라 Release 모드로 컴파일해야 다른 컴퓨터에서 사용할 수 있다.
c/c++ 소스를 컴파일하는 것이므로, visual c++ redistributable(재배포 패키지)를 설치해야 한다.
컴파일한 DLL이 의존하는 다른 DLL이 없어도 오류가 발생한다. 의존관계를 알 수 있는 프로그램(dependencies)도 있다.
vcruntime140d.dll과 vcruntime140.dll는 다르다. vcruntime140d.dll는 debug 모드에서 호출되는 DLL이다. vcruntime140.dll 가 호출되도록 하려면, Release 모드로 컴파일해야 한다.
위 그림에 있는 gpc64.dll에서 vcruntime140d.dll을 호출하고 있다. 이는 gpc64.dll이 debug 모드로 컴파일되었다는 것을 의미한다. gpc64.dll이 vcruntime140.dll 를 호출하도록 하려면 Release 모드로 다시 컴파일해야 한다.
길고 복잡한 이름을 갖고 있는 네임스페이스(namespace)나 데이터 타입(data type)에 간단한 별명을 붙여서 사용하면 편리하다. 닷넷에서도 이런 기능을 제공한다.
VB.Net에서 별명을 선언하기
1 |
Imports MyInt = System.Int32 |
선언된 별명을 사용하기
1 |
Dim myVariable As MyInt = 4 |
다음은 Vertex2D를 항목으로 하는 목록을 정의한 것이다.
1 |
Imports Path = System.Collections.Generic.List(Of GpcWrapper.Vertex2D) |
사용할 때는 다음과 같이 한다.
1 |
Public myPath As Path = New Path() |
https://pietschsoft.com/post/2007/11/26/net-how-to-alias-namespaces-and-data-types
gpc.c를 컴파일하다가 발생한 에러
The extern "C"
construct is a C++ specific thing, it can’t be used in C. And the compiler treats your source file as a C source file since it has the extension .c
.
https://stackoverflow.com/questions/16192872/extern-c-error-2040-expected-an-identifier
https://shoon950.tistory.com/entry/함수-오버로딩-extern-C-cplusplus-매크로
https://dojang.io/mod/page/view.php?id=802
확장자 .c와 .cpp의 차이를 기억하자.
gpc64.dll을 이용한 프로그램을 다른 컴퓨터에서 실행했더니, 제목과 같은 에러 메시지가 발생했다.
Windows 10 x64, Visual Studio 2019
원인1. 문제의 에러 메시지는 gpc64.dll 파일이 없기 때문에 표시된다.
-> 그런데 해당 폴더에 dll 파일이 존재할 때도 에러가 발생할 수 있다.
원인2. 이 때, 해당 dll(여기서는 gpc64.dll)이 의존하고 있는 dll이 없어도 똑같은 에러가 발생한다.
-> 해당 dll에 의존하는 모든 dll이 설치되지 않았기 때문에 이런 에러가 발생한다.
depends.exe(Dependency Walker)를 이용해서 누락된 DLL을 확인할 줄 알았는데, 이를 계승한 새 프로그램(Download here)으로 확인하였다.
확인한 결과, 나의 경우 C++재배포가능패키지가 없었다. 그래서 다음 링크에서 재배포가능패키지를 설치한다.
Install Microsoft Visual C++ 2019 Redistributable Package on the user’s machine
https://support.microsoft.com/ko-kr/help/2977003/the-latest-supported-visual-c-downloads
DLL을 사용할 때, 의존성 여부도 확인해야 한다.
You must be logged in to post a comment.