Programming/개발환경구축

Programming/개발환경구축

[VisualStudio] WPF Xaml Designer Debugging

1. 개요 WPF 을 개발하면 Xaml Designer 를 통해서 윈도우의 디자인을 구성하게 됩니다. 이때 프로그램 실행에는 문제가 없으나 개발을 진행하면서 어느 순간 Designer가 에러가 발생하여 Control을 제대로 렌더링하지 못하게 되는 경우가 있습니다. 일반 Runtime 에서의 디버깅은 Debug 모드에서 충분히 할 수 있지만, Desinger에서 발생하는 문제같은 경우에는 디버깅하기가 쉽지 않습니다. 이를 해결하는 방법을 알아보도록 합니다. 해당 내용은 Visual Studio 2022를 기준으로 합니다. 2. Designer 프로세스 알아보기 WPF 의 Designer는 어떻게 동작하는 걸까요? WPF Designer도 Application 실행과 비슷하게 내부적으로 'Microsoft..

Programming/개발환경구축

PyTorch 1.13 + Cuda 11.7 + cnDNN 8.5

PyTorch 를 활용해 ML 을 공부하기 위한 개발환경 구축을 하게 되었다. 최근에 VTK 개발 환경을 구축하면서 아무생각 없이 최신버전으로 Nvidia driver를 업데이트하면서 일부 코드가 동작중에 강제 종료되는 문제를 겪었다. 이런 이유로 최신버전의 드라이버가 좋은 것보다는 호환성을 맞춰서 개발환경을 구축하는 것이 중요하여 먼저 호환성을 검토하고 환경을 구축해야 된다는 걸 다시 느꼈다. Compatibility Matrix 호환성은 최종 target인 PyTorch를 기준으로 주변 패키지들을 설치하는 것으로 한다. 통합적인 호환성을 참고 : PyTorch Release Notes :: NVIDIA Deep Learning Frameworks Documentation PyTorch 1.13 Com..

Programming/개발환경구축

Docker 기본 명령어

전체 적인 Docker 의 명령어를 알고 싶으면 공식 Document 를 검색해보자. Docker run reference | Docker Documentation Docker run reference docs.docker.com # 아래의 명령어들은 Unity-Robotics-Hub를 위한 ros docker 설치를 기준으로 작성하였다. 실행 중인 Docker conatiner 검색 docker ps -a Docker 실행 Docker Image를 실행하는 기본 명령어 docker run -it --rm -p 10000:10000 unity-robotics:pick-and-place /bin/bash Option 설명 -i : interactive mode -t : tty 접속 --rm : docker..

Programming/개발환경구축

gitignore 동작 안 할 때 해결 방법

Git Ignore snippet 파일을 이용하여 gitignore 적용 github/gitignore: A collection of useful .gitignore templates GitHub - github/gitignore: A collection of useful .gitignore templates A collection of useful .gitignore templates. Contribute to github/gitignore development by creating an account on GitHub. github.com 만약 ignore 설정이 잘 먹히지 않으면 최상위 경로에서 cli 명령 실행 git rm -rf --cached . git add .

Programming/개발환경구축

PyCharm + Nodemon 디버깅 환경설정

Node.js 에서 디버깅할 때 nodemon 으로 실행하면 코드 변경이 발생할 때 서버를 다시 시작해준다. 이런것이 개발환경 구축할 때 매우 편리하다. PyCharm + Nodemon 공식문서 내용 그런 의미에서 nodemon 으로 코드 모니터링과 pycharm 의 디버깅의 조합을 구성하고 싶었다. PyCharm 의 공식문서에 나와있는 사용법이다. Running and debugging Node.js | PyCharm (jetbrains.com) Running and debugging Node.js | PyCharm www.jetbrains.com 간략하게 정리하면 package.json 의 script에서 nodemon 실행문을 넣는다. terminal에서 npm script-command 를 수행한..

Programming/개발환경구축

VisualStudio LNK2038 에러

프로젝트에서 여러개의 외부 라이브러를 함께 빌드하는 경우 Compiler Runtime Library (CLR) 설정이 다른 프로젝트를 함께 사용할 경우에 발생하는 오류입니다. 이는 참조하는 프로젝트의 라이브러리의 CLR 설정이 /MT 또는 /MD가 일치되어야 합니다. CLR의 설정과 library configuration type (Dynamic dll, Static lib)와는 별개이니, 같은 개념으로 생각하면 안됩니다. 런타임 라이브러리에 대한 개념이 쉽게 정리되어 있으니 참고하면 좋습니다. [C/C++] 런타임 라이브러리 링크 /MD 및 /MT 컴파일 옵션 차이점 정리

Programming/개발환경구축

[VisualStudio] Build Event를 위한 cmd 명령어

Visual Studio의 프로젝트를 빌드하고 나서 원하는 cmd 명령 또는 batch 파일을 실행이 필요한 경우에는 Project의 Post Build Event 를 사용할 수 있습니다. 하지만 필자도 batch command에 익숙하지 않아서 간단한 파일 복사정보다 써왔습니다. batch command 를 작성하는데 유용할 수 있는 내용과 실수가 될 수 있는 부분들을 정리합니다. 기본적으로 cmd 명령어에 대한 참고 사이트가 있습니다. 여기에 기술되지 않은 명령어나 더 자세히 알고 싶은 내용이 있다면 참고하거나 cmd 창에서 help [명령어] 를 해서 확인할 수 있습니다. 참고 : An A-Z Index of Windows CMD commands - SS64.com 1.변수 사용하기 cmd 명령을 ..

Programming/개발환경구축

Debugging Soruce 경로 추가

Qt와 같이 빌드가 완료된 binary 파일을 사용하는 opensource의 경우 debugging 하면서 call stack 에서 해당 소스의 정보를 알수가 없어서 cpp 파일을 찾을 수 없다고 나옴니다. 만약 call stack으로 라이브러리의 source 정보를 tracking 하기 위해서 debugging source 경로를 추가 할 수 있습니다. 물론 해당 라이브러리의 source는 별도로 저장되어 있다고 가정합니다. 만약 debugging 중에 call stack으로 Qt6Cored.dll 의 함수를 tracking 한다고 가정합시다. Debugging call stack을 하려는 중에 Qt dll 파일의 source를 확인하려고 하면 아래와 같이 find source 창이 뜹니다. 물론 so..

Programming/개발환경구축

Qt 6.2.1 + Vtk 9.1.0 + Itk 5.2 빌드하기

1. Qt 설치 Qt 공식 다운로드 페이지에서 Qt를 다운로드 한다. Download Qt: Get Qt Online Installer Download Qt: Get Qt Online Installer Download Qt, an open source development tool containing everything you need for your entire software development life cycle. Install Qt today. www.qt.io 설치에 필요한 옵션을 선택한다. 필자는 VS 2019 버전을 사용하므로 VS 2019을 선택하였다. 프로그램 설치를 수행한다. 간단한 화면은 스킵하고 필자를 아래와 같이 Component를 설치하였다. 설치 완료. 설치를 완료 한 뒤에 ..

Programming/개발환경구축

윈도우 환경변수 등록하기

윈도우 시작 버튼을 누른 후 "고급"을 치면 아래와 같이 고급 시스템 설정 보기 가 나오면 클릭합니다. 시스템 속성 창이 나오면 환경변수를 클릭합니다 원하는 목적에 따라 사용자 변수 또는 시스템 변수에 대해 새로만들기 버튼을 누릅니다 시스템 변수의 경우 아래와 같이 창이 뜨면 해당 변수의 이름과 값을 입력합니다. 확인을 누르면 등록된 것을 확인할 수 있다. * 사용자변수와 시스템 변수의 차이 사용자 변수는 말 그대로 현재 로그인한 계정에 한해서 사용할 변수 값이며, 시스템 변수는 사용자에 상관없이 모두 적용할 변수를 지정합니다. * 변수 값 적용하기 사용자변수 : 컴퓨터 재부팅 없이 사용자 로그아웃 후 로그인하면 적용됩니다. 시스템변수 : 사용자 변수를 사용하는 프로그램을 재실행한다. 터미널의 경우 새로..

RichardBang
'Programming/개발환경구축' 카테고리의 글 목록