g++ 컴파일 중 다음과 같은 에러 메시지를 확인했다.
error: multiple types in one declaration
위와 같은 메시지가 발생하는 이유는 간단하다
클래스나 구조체의 마지막에 세미콜론을 잊어 버려서 생기는 에러이다. 생각보다 간단하다.
하지만 이 세미콜론을 잊어버린 곳 찾기가 가끔은 쉽지 않을 경우가 있다. (…나처럼)
g++ 컴파일 중 다음과 같은 에러 메시지를 확인했다.
error: multiple types in one declaration
위와 같은 메시지가 발생하는 이유는 간단하다
클래스나 구조체의 마지막에 세미콜론을 잊어 버려서 생기는 에러이다. 생각보다 간단하다.
하지만 이 세미콜론을 잊어버린 곳 찾기가 가끔은 쉽지 않을 경우가 있다. (…나처럼)
가끔 아래의 메시지와 같은 에러가 발생하면서 프로그램 실행이 안돼는 경우가 있다.
대표적으로 make를 실행할 때 가끔씩 발생한다.
/bin/sh: Syntax error: Bad fd number
우분투에서는 다음과 같은 명령어 커맨드로 해결할 수 있다.
sudo rm /bin/sh
sudo ln -s /bin/bash /bin/sh
KLDPConf 를 소개합니다.
이 글을 보니 제가 고등학교때가 생각이 나네요.
제가 도움이 될지 모르겠으나, 저도 한말씀 올리겠습니다.
저는 71년 돼지띠 90학번입니다. 어디에서 보니 인구가 가장 많은 순으로
71, 72, 70 이렇게 되더군요.. 덕분에 군대에도 6개월씩 기다려서 가고 그랬고,
아마 대학 경쟁률도 당시 사상 최대였을듯 합니다.
님은 아마도 19세 정도 되셨고, 저는 한국나이로 38세이고, 만으로 36세이니
거의 20년정도 차이가 나네요.
저는 그렇게 공부를 썩 잘하지는 못한 편이었습니다.
성격도 내성적이고 사회성이 무척 떨어지는 반면, 집에서 스트레스를 너무 많이 받아
중,고등학교 시절은 제 인생의 암흑기라고 생각하는 사람입니다.
저희 누나는 경북대학교 치과대학에 다니고 있었는데, 어머니도 의대나 치대에
가라고 하셨습니다.
그런데, 아무리 성적을 봐도 거기에 갈 형편은 안되고, 제 적성 또한
그런 곳에는 맞지 않았습니다.
반면에 컴퓨터가 너무 좋아서 사실 고3년동안 공부보다는 울티마 같은 게임을
독서실에서 설계하곤 했습니다.
여차저차해서 성적에 맞게 경북대학교 유전공학과에 합격했고,
(반에서 전기 합격한 친구는 딱 2명이었고, 그중에 한명이었습니다)
집에서는 재수하라고 하시더군요. (결론은 다시 공부해서 의대가라는 거죠..)
친구들은 다음해에 모두 의대, 치대, 한의대..등등에 들어가더군요.
저는 인생에서 처음으로 어머니 뜻에 반해 집에서 미친사람 처럼 하루 반항하다가
결국 그냥 학교에 다녔습니다.
대학은 그냥 간판만 딴다고 생각하고, 대학 내내 컴퓨터와 살았고,
너무 즐겁고 행복했습니다. 군대에 다닐때는 아케이드용 게임을 만드다고
군대에 설계도를 가지고 다니기도 했고, 휴가 때는 서울 회사에 들락거리면서
게임을 만들었습니다.
군대 끝나고는 2년동안 서울을 모 회사에서 게임도 만들었습니다.
몸이 아파 복학을 하고, 대학교 4학년이 되니 걱정이 되더군요.
학점은 바닥이고, 취직은 전공으로 불가능하고(성적…),
그래서 그 당시 LG 소프트에 경력직으로 합격을 했습니다.
당시만 해도 SI 뭔지 이 산업에 대해서 전혀 모르는 말 그대로
풋내기였지만, 그냥 일을 잘 할 수 있을 것 같았습니다.
그런데, 가만히 생각해 보니, 그냥 취직을 하는 것보다는 관련 공학을
더 공부하는 것이 가치있는 일일 것 같아,
생애 처음으로 4학년 1학기때 전산학 관련 책을 싸들고 도서관에 다녔습니다.
전산관련 수업 1시간도 듣지 않고, 그해 전산 대학원에 합격하고,
2년동안 DBMS를 전공하였지요.
대학원에 다니면서 제가 느낀게 어떻게 4년 전산을 전공한 사람들이
이렇게 나보다 모를까? 하는 점이었습니다.
자랑이 아니고, 뭔가 좋아서 하는 것하고, 그냥 취직하기 위해 공부하는 것하고는
전혀 다르다는 것을 느꼈지요.
교수님께서는 박사를 하라고 강력하게 원하셨지만, 집안 형편상 KT관련 회사에
취직을 하였다가 1년만에 그만두고 지금 MMDB를 만들고 있는 회사에서 창업멤버로
8년째 일하고 있습니다.
제 인생의 황금기라고 한다면, 대학 4학년 동안 컴퓨터에 미치게 산것과,
군대 마치고 2년간 서울에서 미치도록 게임개발한 것과
알티베이스에서 지난 7년동안 미친듯이 DBMS를 개발한 것입니다.
물론 재수를 해서 의대에 갔으면, 지금쯤 어딘가에서 돈 걱정없이 살 수 있었을 것이고,
개업해서 망했을 수고 있겠지요.
알티베이스는 이제 겨우 100명에 백 몇십억을 하는 회사지만,
그 어디보다도 가치있는 기술력 있는 회사라고 믿고, 자랑스럽습니다.
왜냐하면 제 인생을 투자한 곳이고, 좋아서 그렇게 해서 그렇지요.
알티베이스가 아니라 이 회사가 청소를 하는 회사라고 했더라도
저는 이곳에서 미친듯이 바꾸고 일을 했을 것입니다.
제가 가진 한가지 모토가 있다면, “최선을 다하면 나머지는 알아서 온다” 입니다.
세상에 안정적인 직장이 어디있습니까?
그렇게 안정적인 직장이 있다 한들, 교통사고 나서 죽으면 끝 아닌가요?
물론 저도 때로는 불안하고, 은행 잔고가 걱정도 되고, 나이 40이후가 걱정됩니다.
하지만, 안전 펜스 속에서 인생을 관조하듯이 살면, 죽을 때 즐거울지는 모르겠습니다.
저는 마치 선진국처럼 치열한 경쟁사회이면서도
사회안전망이 부실한 대한민국이 참 어이없는 나라라고 생각을 하지만,
그게 나의 직업을 “공무원” 과 같은 철밥통을 선택하는 결정적 이유가 되리라고는
생각하지 않습니다.
님은 이제 스무살이고, 자기가 하고 싶은 일을 해야 하지 않나요?
의대에 가신다면 더 이상의 조언은 불필요할 듯 하고,
IT를 하신다면 제가 하지 못했던 다음과 같은 조언을 드립니다.
가능하다면 한국에서 좋은 대학에 들어가셔서 대학생활동안 우수한
친구들과 IT 분야에서 경쟁하시고, 공부 열심히 하십시요.
대학원은 미국과 같은 선진국에 가셔서 공부를 하시고,
그들과 경쟁할 수 있는 장점을 터득하십시요.
그리고, 영어는 외국인으로서 도달할 수 있는 최대한 까지 습득하십시요.
선진 IT회사에 들어가셔서 그들의 개발 문화, 습성, 아이디어를 배우세요.
자신이 잘 익은 열매라고 생각되시면, 과감하게 IT분야에서 창업을 하시고,
성공하십시요.
그리고, 한국 젊은이들에게 어떻게 세계적으로 성공한 소프트웨어 기업을
만들었는지 모범을 보이시고, 이후의 젊은이들이 님을 따라 길을 갈 수 있도록
인생의 선배가 되어 주십시요.
제가 이렇게 되고 싶으나, 저는 너무 많이 왔네요. 하지만, 오늘도 노력합니다.
마지막으로 이 글을 드리고 마칠까 합니다.
“젊은이는 꿈을 먹고 살고, 늙은 이는 추억을 먹고 산다”
꿈을 위해 인생을 투자하시고, 성공한 이후에 그 추억으로 인생을 반추하는 멋진
사람이 되시길.
고도의 추상화, 극도의 구체화, 에디슨을 그리워하다.
==========================================================
“젊은이는 꿈을 먹고 살고, 늙은 이는 추억을 먹고 산다”
기분좋은 이야기긴 하지만 일면, 참으로 부끄러운 이야기를 하나 하겠습니다.
혹시 KLDP에 실제로 참여하여 문서를 번역하거나 창작 원고를 보내주신 분들이라면 linuxdoc sgml,
docbook에 대한 이야기를 들어본 적이 있었을 것입니다. 애초에 linuxdoc sgml은 LDP(Linux
Documentation Project)에서 특정 프로그램에 종속되어 있지 않은 txt, html, ps 등의 포맷으로 문서를
제작하기 위해 새롭게 정의한 DTD의 일종입니다. HTML과 비슷한 형태로 소스를 한번 만들어 두면 sgmltools라는
프로그램을 통해 위에 말씀드린 여러가지 포맷의 문서들을 자동으로 생성해 주지요. 그런데 이게 문제가 좀 있습니다. 한글을 제대로
처리하지 못하는 문제와, 번역자를 명시하기 위해 따로 정의된 태그가 없다는 거죠. 그래서 최준호씨가 일본 사람의 패치를 참고하여
한글처리 부분을 수정하고 번역자를 명시할 수 있는 태그를 추가하여 몇년째 잘 사용하고 있었습니다. 그러나 linuxdoc
sgml DTD는 이름에서 알수 있듯이 LDP를 위해 특별히 만들어낸 것으로서(물론 이것도 어느 DTD를 참고해서 만든 것이긴
합니다. 이름이 잘 기억나지 않네요.) 최근에는 DocBook라는 포맷으로 전환 작업이 진행 중입니다. DocBook은
linuxdoc 보다는 좀더 “일반적” 입니다. 컴퓨터/기술 문서를 작성하는데 필요한 많은 태그들이 세세하게 정의되어
있지요. 태그가 많은 만큼 기능도 많지만 그에 따라서 처음에 익숙해지는데 시간이 좀더 걸립니다.
그런데 이 DocBook에서도 번역자를 명시하기 위해 특별히 정의된 태그가 없습니다. 이런 상황에서 최근 박용주님이 http://docs.kldp.org
를 만들면서 DocBook의 스타일시트를 조금 고쳐서 특정 태그를 번역자를 위한 태그로 사용할 수 있도록 고쳤으며 그 외 다른
내용들 역시 약간의 수정을 가하였지요. 그리고 이를 kldp.dsl이라는 이름으로 홈페이지에서 배포를 하고 있습니다. 여러분이
잘 아시겠지만 KLDP는 애초에 하우투 문서들을 번역하기 위한 용도로 만들어 졌지요. 그리고 지금껏….가장 기본적인 문서
변환 작업에 사용하는 표준 포맷에 가장 기본적으로 명시가 되어야 할 번역자를 위한 태그가 아직 없다는 사실 때문에
linuxdoc sgml DTD도 따로 만들고 DocBook 스타일시트도 따로 만들게 된겁니다. 여기까지는 좋습니다. 다른
나라의 경우 이정도로 작업을 하는 곳은 별로 없거든요. 대부분 원본의 원 저자 이름 옆에 번역자의 이름을 나란히 넣어 버리거나
아니면 다른 부분에 그냥 대충 추가하는 경우가 많습니다. 물론 KLDP도 그런 식으로 작업이 된 경우가 종종 있구요.
그러다 그저께였나…DocBook으로의 전환을 위해 http://docs.kldp.org
에서 메일링 리스트를 통해 여러가지를 의논하던 중 번역자를 위한 태그가 정말로 없는 것일까(DocBook에는 태그가 아주
많습니다.) 궁금하기도 하고 다른 나라는 어떻게 처리를 하는지도 알고 싶어서 LDP의 메일링 리스트에 메일을 보냈습니다. 몇년째
이렇게 따로 태그까지 추가해 가면서 작업을 하다가 거의 처음으로 KLDP 작업에 대해 직접 메일을 보내본 겁니다.
“우리는 너네들 HOWTO들을 한국어로 번역하는데 참여율이 매우 높다. 그런데 번역자를 명시하는 방법이 없어서 우리가 따로 작업을 해 왔는데 혹시 DocBook에서는 그런 방법이 없느냐? 만약 없다면 어떻게 하는 것이 좋겠느냐?
한국 말고 다른 나라는 어떻게 하느냐?”
이런 취지의 메일을 보냈습니다.
그랬더니 이틀도 되지 않아 매우 놀라운 일이 벌어졌지요.
-LDP에는 Author Guide라는 것이 있습니다. 제목 그대로 처음 참여하는 사람들을 위한 가이드라인인데 이곳에 번역자를 위한 섹션이 추가되기로 했고 이미 베타 샘플까지 나왔습니다. 이틀 사이에!
-DocBook에도 역시 번역자를 위한 태그를 DocBook에 정식으로 넣기 위한 논의가 시작되었습니다.
-기존에 작업하던 linuxdoc sgml의 DTD에 최준호씨가 번역자를 위해 따로 추가한 , 태그를 linuxdoc sgml
DTD를 개정하여 정식으로 추가하기 위한 논의가 시작되었습니다. 이 패치를 처음 만들었던 일본 사람에게까지 이미 연락이 되었지요.
제가 평소에 마음속으로만 생각해 왔던 궁금증, 그것도 KLDP를 몇년째 운영하면서 그냥 머리속에서만 생각했던 부분에 대한
필요성을 실제로 풀어놓자 너무도 빨리 실현이 되어 버린 겁니다. 몇년동안의 궁금증과 바램(?)이 단 이틀만에 풀려버린 거지요.
참으로 기쁜 일이긴 하지만 일면, 매우 부끄러운 일이기도 합니다. 왜 진작에 이렇게 하지 않았을까….
이동네(?) 사람들은 좀더 적극적일 필요가 있습니다. 그리고 좀더 넓게 바라볼 수 있어야 합니다. 자기에게 필요한 부분,
자기가 발견한 문제점들은 실제로 경험한 사람이 알려주기 전에는 개발자가 미리 알수가 없습니다. 조그만 것이라도 바로바로
알려주고, 자기가 할수있는 부분에 대해서는 시간을 들여서 개발자에게 도움을 주어야 합니다. 전혀 어려운게 아니죠. 그러한 관심
자체가 서로에게 도움이 되는 건강한 흥미거리인 것이고 이동네(?)가 굴러가게 하는 가장 기본적인 요소입니다.
저처럼 오랫동안 머릿속에다 어렴풋하게 생각을 담아두지 마시고 바로바로 표현을 하십시오. 생각보다 훨씬 빨리 좋은 방향으로 개선되는 경우를 분명 경험하실 수 있을 것입니다.
멀리서 찾으실 필요도 없이 가까운 곳을 둘러보아도 여러분의 손길을 기다리는 프로젝트는 수도없이 많습니다. 단순한
사용자에서, 남에게 도움도 되고 스스로 보람도 느낄 수 있는 일을 하는 사람으로 거듭날수 있는 기회가 널려 있다는 얘깁니다.
부디 자신의 관심과 흥미가 끌리는 곳에 참여하시고… “적극적으로” 의사표현을 해주십시오.
그러다 보면 저처럼 이렇게 감동하는 날도 언젠가 분명히 올겁니다. 🙂
==========================================================