Sablog Models/모바일·임베디드 8

strings.xml 로컬화 점검 방법 (How to check strings.xml localization)

안드로이드 SDK에서 l10n은 strings.xml을 이용해 이루어진다. 해외 법인이 따로 있는 회사에서 앱을 개발하는 경우에는 아예 소스 코드를 넘겨서 별도의 앱을 만들어 버리는 경우가 많지만, 규모가 그렇게 크지도 않고 문자열 외의 대대적인 로컬화가 필요가 없다면 res/values locale postfix modifier 사용은 필수적이다. 이럴 경우 트리 메인테이너에게는 언어별 strings.xml을 관리해야 한다는 부담이 작용한다. 개발이 항상 선형으로 이루어질 수는 없기에, 로컬화 담당자가 strings.xml을 들고 왔을 때 무엇이 누락되었을지 찾기 어렵기 때문이다. 주로 이런 문제는 담당 로케일의 QA가 운좋게 찾아내는 게 고작이다. 오픈소스의 경우 얼마나 많은 타깃 언어가 만들어질 것..

간단한 Windows API / Windows CE API 개발 환경 (2)

앞서 vcvars32.bat이나 wcearmv4i.bat 등으로 최소한의 빌드 환경을 구축할 수 있었다. 한편 cl.exe나 clarm.exe의 입출력을 제어하는 것만으로는 부족할 때가 있는데, 라이브러리를 사용하게 되면 거의 항상 그렇다. 마이크로소프트의 빌드 시스템과 라이브러리는 20년에 가까운 시간 동안 자신들의 엄격한 호환성을 지키며 엄청나게 복잡하게 발전해 왔고, IDE를 통하지 않으면 프로젝트를 잘 진행하기 어렵게 되었다. 물론 그 IDE는 솔직히 다른 IDE와는 비교가 안 될 정도로 멋지고 강력하지만, 아쉬운 건 어쩔 수 없다. GNU 빌드 시스템과 MS 빌드 시스템을 묶은 것들도 유명하다. CMake나 Qt의 moc인 qmake 등이 그것이다. 비록 지향점은 다르지만 (CMake는 보다 n..

간단한 Windows API / Windows CE API 개발 환경

Windows 상에서 API 개발을 하다 보면 간단한 프로젝트의 경우 Visual Studio를 설치하고 다음과 같이 배치 파일을 사용해 커맨드라인 환경을 사용할 때가 있다. (예: VC 10.0, 루트 드라이브 문자가 C:일 때, 32비트)call "C:\Program Files\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat"cl.exe를 사용할 수 있으며 대개 별도의 옵션은 필요 없다. 한편 간단한 프로젝트에서는 마찬가지로 eMbedded Visual C++ 4.0으로 비슷한 일이 가능하다. (예: 타깃 플랫폼 armv4i)call "C:\Program Files\Microsoft eMbedded C++ 4.0\EVC\wce400\bin\wcearmv4i.ba..

프로그래머가 말하는 PMP 100배 활용 - (*) Qt Creator 포팅 후기

Qt Creator를 제 PMP(T5)에 포팅하는 데 성공했습니다. (사진) 사진이 흐려서 죄송합니다. 일단 너무 감격스럽습니다. 내가 성공하다니! 사진상에는 생략되어 있지만 USB 키보드를 연결해서 잘 쓰고 있습니다. 일단 잘만 되면 프로젝트는 모두 PMP에서 작성하고 컴파일만 데스크탑에서만 할 생각입니다. WinCE용 VS라든지 Qt와 함께 쓸만한 컴파일러가 없다는 게 통탄스러울 따름입니다.

프로그래머가 말하는 PMP 100배 활용 - (3) PMP용 Qt/PMP에서 개발하기.

(헐) 나는 Qt Creator를 WinCE에 포팅(...)하는 것을 목표-_-로 하고 달려들기 시작했다. 별로 어려운 과정은 아니다. ...라고 하기에는 이게 필요하다. Microsoft Visual Studio 2005 / 2008 Professional Edition - Visual C++ Standard Edition은 안 된다고 합니다. 그리고 무슨 영문인지 모르겠지만 제게는 MSVC2008P가 있습니다. 죄송합니다. 자세한 내용은 3번에서 언급합니다. 이 글은 현재 시점을 기준으로 쓰인 글이며, 변경될 소지가 있습니다. 그러나 변경될 경우에도 이 글에서 소개하는 방법과 절차는 어느 정도 유효합니다. 1. Qt Creator 소스 패키지 + Qt 4.7 내려받기 http://qt.nokia.co..

프로그래머가 말하는 PMP 100배 활용 - (2) 준비 과정 2

(시험 기간, 하루 시험 보고 정신 못 차리고 컴퓨터를 붙잡다니) 중요한[?] 사실. .cab 파일은 캐비넷 압축 파일이라고 하며 설치용입니다.-_- Windows CE 탐색기 상에서 더블클릭하면 실행됩니다. 설치 프로그램이 따로 있는 프로그램의 경우 ActiveSync나 WMDC를 거치게 됩니다. 일단 호스트 PC에 설치하면 나중에 휴대용 기기가 연결되었을 때 알아서 옮겨집니다. 이 때 PMP의 연결 모드를 ActiveSync(액티브싱크)로 설정해 주세요. ActiveSync/WMDC는 경험상 필요할 때에만 사용하는 게 좋겠습니다. 파일 이동 중에도 기기를 쓸 수 있다는 건 장점이지만, 대용량 저장소 설정으로 연결하는 것에 비해 데이터 이동이 너무 느립니다. 제가 만든 건 아니고, 일단 몇 가지 파일을..

프로그래머가 말하는 PMP 100배 활용 - (1) 준비 과정

(그나저나 블로그 접고 공부만 하려고 했는데 Orz) 원래 1편은 잘 알려진 프로그램과 부가 기능들을 소개하는 글로 만들려 했으나, 개발툴을 소개하는 일을 먼저 해야겠습니다. 제목의 링크는 위키백과 한국어판의 글로 통합니다. 1. ActiveSync & Windows Mobile Device Center ActiveSync와 Windows Mobile Device Center가 무엇인지 이 글에서 굳이 설명하는 것은 자원 낭비. 다만 XP 이하에서는 ActiveSync를, Vista 이상에서는 Windows Mobile Device Center를 씁니다. Vista에서는 ActiveSync를 설치할 수 없습니다. XP에서 WMDC를 쓰는 것도 마찬가지로 불가능. ActiveSync 4.5 / (ko) D..

프로그래머가 말하는 PMP 100배 활용 - intro

얼마 전에 PMP가 생겼다. 생겼다고 말하면 돈 내고 사는 것을 뜻하겠지. (응?) 기종: T5 (i-Station) 모델명: T5-N Academy (8G) 특징: Launcher의 3D GUI, Triple Core OMAP2, 4.8 inch WVGA (800*480) 사양: Windows CE .NET 5.0 / 약 277g / 4000mAh LiP / ARM1136-OMAP2430 / ... (자세한 정보는 i-Station 사이트 해당 페이지로) 사실, 나는 PMP 시장 자체에 다소 부정적이었다. 특히 COWON 때문에... 이건 뭐 PMP계의 애니콜도 아니고. 말하자면 코원이든 아이스테이션이든 아이리버든 다른 곳에 투자할 비용과 적자를 PMP에서 벌고 있다. "뭐야?" 싶지만 대차대조표나 손..