티스토리 툴바

 

블로그 이미지
주제가 명확하지 않은 블로그입니다. 전공 분야나 오랫동안 관심을 가졌던 분야에 관한 글 위주로 적고 있지만, 기회가 될 때마다 단상과 장문을 가리지 않고 여러 분야에 대해 사실과 의견을 기록하고 싶습니다. 요즘은 트위터에서 많이 활동합니다. Un-i-que

MB = Mad Bulls
미친 소 잡는 날

남았습니다. ㅠㅠ
See more...

Notice»

Twitter

Archive»

« 2012/05 »
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

Visual Studio 2010에서 빈 프로젝트나 Win32 콘솔 응용 프로그램을 생성하면 이전의 Visual Studio에서와 달리 실행 파일이 마지막 표준 출력 결과를 볼 수 있도록 기다려 주지 않고 꺼진다.(단축키 Ctrl+F5) 이는 실행 파일의 출력이 지정되지 않았기 때문인데, 원래 콘솔 프로그램은 표준 출력을 콘솔로 내보내는 게 맞지만, 오늘날 콘솔 프로그램은 GUI의 프론트엔드로 쓰이는 일이 잦아지기 때문인지 Visual Studio 2010부터는 출력을 콘솔로 기본 지정하지 않고 있다.

이를 해결하려 한다면 당연히 출력을 콘솔로 지정하면 된다. 다음 둘 중 한 방법으로 프로젝트의 출력을 콘솔로 지정할 수 있다.

  1. Visual Studio 2010에서 프로젝트를 열고 메뉴 프로젝트> 속성> 구성 속성> 링커> 시스템: 하위 시스템
    필드를 찾아 값을 다음과 같이 준다.
    /SUBSYSTEM:CONSOLE
  2. XML 포맷인 .vcproj 파일을 텍스트 에디터로 열고 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">과 바로 다음의 </PropertyGroup> 사이, <Link>와 </Link> 밖에 다음을 추가한다. (Release에도 추가하는 건 자유)
    <Link>
    <SubSystem>Console</Subsystem>
    </Link>

반면에 프로젝트마다 이런 설정을 하기 귀찮다면 이 값을 기본으로 줄 수도 있다.

  • 텍스트 에디터를 관리자 권한으로 실행해 다음 ...\vcprojects 디렉터리에서
    • 64비트의 경우 C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcprojects
    • 32비트의 경우 C:\Program Files\Microsoft Visual Studio 10.0\VC\vcprojects
    win32console.vsz 파일을 열고 아래 한 줄을 추가한다.
    Param="SUBSYSTEM = CONSOLE"
  • emptyproj.vsz 파일을 같은 방식으로 편집하면 빈 프로젝트에도 옵션이 적용되지만, 권장하지 않겠다.

Win32 콘솔 응용 프로그램을 생성하고 [확인], [다음]을 눌러 빈 프로젝트 체크박스를 선택하면 빈 프로젝트를 생성하는 것과 거의 같은 상태가 된다.

프리프로세서 #include <stdlib.h>를 주고 main() 끝에 system("pause");를 쓰면 프로젝트 기본 옵션을 바꾸지 않고 같은 효과를 볼 수 있다. 물론 실행 파일의 덩치가 커지기 때문에 완전히 같은 효과는 아니다. 나는 system("pause>nul");을 쓴다.

크리에이티브 커먼즈 라이선스
Creative Commons License
http://ryueyes11.tistory.com/1314 ( http://t.co/RPETuTXN )를 읽고, 할 일이 없어서 반박문 올립니다.
덧글로 올렸던 내용 그대로인데 읽지도 않고 삭제하네요.

오픈소스가 어떻게 굴러가는지 모르시죠? 리눅스 써 본 적도 없으시죠?
"그 보안쓰레기 내가 왜 쓰나요"라고 하실래요?
한 글자도 빼지 말고 쳐읽으세요.

님 쓰는 윈도우에 맨날 깽판 부리는 바이러스같은 거. 어떻게 만들어야 하고 어떻게 막아야 할지 보안산업체에서 연구하는 일류 해커 분들이, 직접 자기 컴퓨터에 리눅스 설치하고 스스로 뚫으면서 보안을 업그레이드해 놓습니다 :) 그리고 그런 해커들이 윈도우보다는 자기들이 수정한 리눅스를 믿으면서 성장해 왔어요. 그렇게 리눅스가 오픈소스인지 20년이고, 미 항공우주국(NASA)과 국가안보국(NSA)에서도 메인서버를 리눅스 기반으로 쓰면서 보안성을 강화해 줬습니다. 소스 열면 취약점 보고 뚫으려니 하는 당신같은 사람 위에 그걸 고친 사람들이 있단 말입니다.

내가 삼엽충이라 당신 글 잘못됐다는 게 아닙니다. 저 돈 없어요. 스마트폰 하나도 없습니다. 솔직히 요즘 스마트폰 하나도 못 믿겠어서 못 쓰고 있고요. 삼성이 기업윤리 버린 건 물론 국가 전반적으로 제도권 도움 덕분에 이것저것 많이 쥐고 흔들고 있고, 삼성전자 스마트폰 사업부에서 갤럭시 시리즈도 솔직히 아직 존나 못 만들어요.
근데 삼성이 안드로이드 쓰는 거 자체는 별개의 문제 아닙니까? 애초에 삼성이 옴니아부터 시작해서 호갱님들 폰 팔아먹으려고 혈안이 되어 있었지만, 안드로이드를 쓴 이상 소스 공개하는 건 의무입니다? 리눅스가 오픈소스라서 호구가 아니라, 그 오픈소스를 갖다 만든 것도 오픈소스로 내놓으라는 라이선스(GPL)가 있어요. FSF라는 데에서 소송까지 걸면서 그걸 보호해 주고 있습니다. FSF한테 털려요. 삼성이 지들 안드로이드를 어떻게 개떡같이 수정했을지는 모르지만 FSF한테 털리지 않으려고 공개한 거라고요. 안드로이드야 소스 공개되는 게 당연하니 소비자가 안드로이드 폰 사서 쓰든 말든 알아서 하라고 하세요. 사실 안드로이드야 웬만큼 수정해도 보안성은 걱정할 일이 없지만, 공부할 생각이 없으시니 더 이상 말하고 싶지는 않네요.

그리고 아이폰 탈옥 강좌 올리셨는데, 어떻게 하는 줄만 알지 그게 취약점 어떻게 보이는지는 모르시죠? 그것도 애플이 사실상 소스 공개해서 그러는 거거든요? 애플도 사실 관심으로 먹고사는 종자죠. 근데 그게 애플이 사용자 보안에 관심이 없어서라고 생각하시나요? 집어치우세요. 그것도 GPL 때문이에요. LG전자가 소스 공개 못 하고 있죠? 보안에 자신이 없어서가 아니라 오픈소스의 본질을 이해 못 하기 때문이에요.

결론은, 말하는 도중에 논지 좀 바꿔먹지 마세요. 안드로이드는 원체 보안이 병신이라고 했다가, 그게 털리려고 하니까 삼성을 까고 스마트폰을 까네요. 안드로이드가 오픈소스라서 보안 병신 아니구요, 삼성이 희대의 등신이라도 삼성이 올린 안드로이드가 병신 될 일 없구요(진저브레드가 요구하는 커널버전에 기본 보안사양이 있기 때문입니다). 삼성은 소비자가 호갱님이라서 소스 공개한 게 아니라 FSF한테 안 털리려고 공개한 거고, 이 점은 hTC나 모토롤라 모바일도 완전히 동일하다는 소리입니다.
크리에이티브 커먼즈 라이선스
Creative Commons License

어느 스마트폰 제조사의 스마트한 회의

분류없음 | 2011/10/13 10:58 | Posted by Un-i-que
"오늘도 유저들 항의가 만만치 않아. 이미 나간 폰에 진저브레드인지 뭔지를 업그레이드해 달라는 모양이야."
홍보과장의 프레젠테이션이 끝나고 부장이 운을 떼었다. 누구 하나쯤 나서기를 기대하는 눈치였다. 하지만 과장들은 다들 부장의 심기를 건드릴까 입을 다물고 있었다.
"게다가 신모델도 발적화 개적화 이런 소리가 돌고 있어. 기자들도 대놓고 그래. 자료 효과가 예전같지 않아. 기계를 샀으면 돌아가는 게 원래 그게 그거지 그 가격에 뭘 기대하는 거야? 내가 써 보면 우리 제품도 괜찮던데, 당신들도 안 그래? 문제가 뭐야?"
이쪽 과장은 거의 다 지겹도록 밤 새 가며 마감 맞추던 선후배 동기였다. 그 중에서도 제일 독한 사람들만 남아 있었다. 그러나 부장은 아니었다. 부장급 이상 나이에서는 다 그런 식이었다.
"시간이 너무 모자랍니다."
"또 그 소리야?"
기획책임과장이 입을 열었다. 지난 과장이 책임과장이 되고 6주만에 나간 지 3주만이었다.
"시간뿐만이 아닙니다. 기계 돌리는 게 예전같지 않아요. 우선 스펙부터 임베디드 리눅스에 맞게 뽑아내야 빠릿빠릿하게 돌릴 수가 있는데 프로세스가 문제입니다. 이 건은 지난번에 보고서 올렸습니다."
"요즘 그런 소리 많이 듣네. 사실상 부 단위에서 부 신설하자는 소리를 내가 상부에 어떻게 하나. 그리고, 우리 여태 만들던 거 어디 갔어? 게다가 요즘 돈도 듬뿍 얹어 주잖아."
"돈으로 줄일 수 있는 시간이 아니에요. 소스가 몇백만 줄입니다. 그 많던 우수인력들이 프로젝트 하나 끝나면 줄줄이 나가지 않습니까."
인사과장이었다. 요즘 신입 개발자들 수준이 점점 낮아진다고 불평을 입에 달고 다닌다.
"알았으니까 지난 봄에 넘어온 거 11월 중순까지 진저로 올려 놔. 시스템부에서 간섭 들어오면 자네들도 위험한 거 알지."
"30명만 늘려 주십시오."
"10명. 더는 못 해. 나도 많이 찔러 봤어. 대신 돈은 많이 끌어 올테니까 파트별로 재하청을 주든지 그건 알아서 해."
"...... 알겠습니다."

"고생이 많으세요."
"아냐. 그래도 부장이 사람이 괜찮으니까 말도 하고 사는 거지."
부장의 마지막 말은 모두의 머리 속에 맴돌았다.
"최고를 만들자는 게 아니야. 아이폰만큼만 뽑아 내 봐."

이 글은 근거 없는 픽션입니다.
크리에이티브 커먼즈 라이선스
Creative Commons License