Qt LNK2001 LNK1120, moc 문제 (비주얼 스튜디오 2013) Qt를 비주얼스튜디오에서 사용하다 보면 moc 파일이 만들어지지 않아 LNK 2001, LNK 1120 에러가 발생할 수 있습니다.이럴 경우 ui 파일과 엮이는 헤더 파일을 수정하여 moc를 정상적으로 만들어 LNK 2001, 1120 문제를 해결할 수 있습니다. 먼저, moc 파일을 만들 수 있게 Qt 헤더 파일을 오른쪽 클릭한 뒤 속성을 선택합니다. moc 파일이 만들어지지 않는다는 항목 형식이 "빌드에 참여 안함"으로 되어 있을 겁니다. 이 부분을 아래처럼 "사용자 지정 빌드 도구"로 변경합니다. 일반 - 항목 형식 - 사용자 지정 빌드 도구 그러면 구성 속성 탭아래에 "사용자 지정 빌드 도구 - 일반" 탭이 새로 생성됩니..
Qt 버전 확인하는 방법 (리눅스 우분투에서) 내가 지금 사용하는 Qt의 버전이 가끔 헷갈릴 때가 있는데, 그럴 땐 터미널에 명령어 한 줄만 넣어주면 됩니다. 1qtchooser -print-envcs 위의 명령어 한 줄만 넣어주면, 아래 그림처럼 현재 사용 중인 Qt의 버전과 QMake의 버전까지 확인됩니다. 이 방법 외에, /usr/lib/ 하단의 qtchooser/default.conf를 수정하는 방법도 있는데 인위적으로 고치면 나중에 무슨 문제가 발생할지 모르니 추천하고픈 방법은 아닙니다. 설치된 Qt 버전이 여럿이고, 버전마다 작업 중인 프로젝트가 다르다면 『매번 Qt 버전을 확인』할 필요가 있습니다. 그럴 때면 이렇게 qtchooser 명령어를 사용해 확인해 보세요. 왜냐면 Qt5가 등장하면서..
CMake PCL Qt5, CMakeLists 구성 방법과 예제 PCL의 3rd party 라이브러리 중 하나인 vtk(visualizer toolkit)은 2016년 현재 Qt 4.8.4까지 지원하고 있다. Qt가 5.6까지 나온 것을 고려하자면 정말 너무할 정도로 호환성이 떨어진다. Qt가 버전 5부터 급격히 변화한 것은 사실이나, 그렇다고 해서 아직도 지원을 미루고 있는 현 상황은 내심 불만이다. Qt5 부터 지원되는 다양한 라이브러리를 PCL에선 현재 사용할 수가 없다. 만약 각종 뷰어를 안 쓴다면 PCL을 사용할 수 있으나, 뷰어가 필요하다면 Qt의 버전을 4.8.4까지 낮춰야 한다. 이런 결론을 얻을 수 있었던 건, 내가 Qt5를 이용해 각종 삽질을 해봤기 때문이다. 내가 실수한 부분도 있을 ..
비주얼스튜디오 Qt5 시리얼 연동 사용법 (VS + Qt) 이 포스트는 비주얼스튜디오에 Qt Add-in을 설치한 것을 가정합니다. 실제로 비주얼스튜디오를 이용한 Qt 프로그램 제작하는 분들에게 참조할만한 포스트입니다. Qt 크리에이터를 사용하는 경우엔 이 포스트와 내용이 다릅니다. 아래부터 비주얼스튜디오 + Qt5 + 시리얼 라이브러리 사용 방법입니다. (폴더는 각자 확인하세요) 먼저, C:\Qt\Qt5.3.2\5.3\msvc2012_opengl\include\QtSerialPort 폴더를 확인합니다. 5.x 이상에선 기본적으로 SerialPort 클래스를 지원합니다. 5.x를 설치했음에도 SerialPort 클래스 이용이 안 된다면 아래를 참조하세요. Visual Studio 프로젝트 속성 링커 - ..