'프로그래밍'에 해당되는 글 39건

< PREV |  1  |  2  |  3  |  4  |  5  |  ...  14  |  NEXT >

eclipse Target Management(RSE) 3.1 :: 2009/09/08 11:02

오랜만에 다시 Eclipse로 개발을 시작했습니다. 기존에 Eclipse RSE를 다시 설치하려고 하니까. Eclipse의 버젼도 바뀌었고, RSE의 버젼도 3.1로 업했더군요. 그래서 설치하는 경로가 약간 변경되었습니다.

그래서 이렇게 다시 포스팅합니다. 참고로 이번에 사용하는 eclipse 버젼은 GALILEO 입니다.

사용자 삽입 이미지


우선 기존에는 check update and install에서 기존의 plugin이나 새로운 것이나 모두 관리했었는데 이번에는 두개를 따로 나눴더군요.
사용자 삽입 이미지

RSE를 새로 설치하려면 Install New SoftWare를 선택하시면 됩니다. 그러면 다음과 같은 화면이 나오는데 여기서 기존에는 3.0의 업로드 링크를 연결했는데 3.1로 연결해 줍니다. 3.0으로 해도 되는데 그래도 새로운 기능을 보기 위해서는 3.1로 해주시는 것이 좋습니다. ^^ Add하고 Add 창에 참고하기 위해서 RSE로 추가해 줍니다.

연결하는 URL : http://download.eclipse.org/dsdp/tm/updates/3.1
사용자 삽입 이미지

이제부터는 간단하게 따라하기만 하면 됩니다. 먼저 업데이트할 것을 체크해 주시고, Next 버튼을 눌러줍니다.
그리고 이제 그냥 다운로드해서 설치되기를 기다립니다.
사용자 삽입 이미지

사용자 삽입 이미지


설치가 다 완료되면 화면 오른쪽 위에 있는 Open Perspective에서 Remove System Explore를 선택해서 다음과 같은 화면이 나올 수 있게 합니다. 이제부터는 기존에 포스팅한 것과 같이 새로이 연결할 프로젝트를 연결해서 사용하시면 됩니다.
사용자 삽입 이미지

RSE 3.0 사용하기
사용자 삽입 이미지

사용자 삽입 이미지

사용자 삽입 이미지

이올린에 북마크하기(0) 이올린에 추천하기(0)

2009/09/08 11:02 2009/09/08 11:02
Trackback Address :: http://zemy.net/tc/zemyblue/trackback/181
  • 무료문자 | 2009/09/09 01:43 | PERMALINK | EDIT/DEL | REPLY

    갈릴레오!
    아이폰어플 개발할때도 이클립스가 편한가봐요?
    자바개발용으로 많이 쓰이는죠ㅎ

    • zemyblue | 2009/09/09 10:37 | PERMALINK | EDIT/DEL

      아이폰용 어플을 개발할 때에는 XCode를 사용합니다. SQLite를 입력하고 수정하기 위해서 Firefox의 SQLite Plugin을 사용하기도 하고요. ^^
      eclipse는 리눅스용 서버 개발할 때 사용합니다. ^^

      물론 PHP 코딩이나 자바 어플을 개발할 때에서 사용하고요. ^^

[로그인][오픈아이디란?]
Name
Password
Homepage

Secret

visual studio 2005/2008 Win32 Error On14001 해결하기 :: 2009/06/05 16:58

visual studio 2005부터 MFC나 CRT등의 dll 라이브러리를 사용할 때 각각의 버젼을 달리 사용할 수 있도록 winSxS(side-by-side) 기능을 도입해서 배포할 때 주의를 기울이지 않으면 "Win32 error On14001"의 "응용 프로그램 구성이 올바르지 않기 때문에 이 응용 프로그램을 시작하지 못했습니다"라는 에러를 볼 수 있습니다.

이는 dll이나 exe 파일을 컴파일 할 때 링크로 참조하는 dll 파일들을 버젼과 경로등을 manifest라는 파일로 관리하고 이를 dll, exe 파일에 포함시켜서 찾으려고 하는데 찾지 못하기 때문에 나오는 에러입니다.

제가 이 에러를 본것은 콘솔창에서 실행되는 프로그램을 개발했기 때문에 VC80.CRT라는 디렉토리에 있는 라이브러리를 찾는데. 이를 visual studio 2008이 설치되지 않은 다름 컴에서는 찾지 못하기 때문에 발생을 했었습니다.
컴파일을 할 때 object들이 생성되는 디렉토리에 보면은 <프로그램명>.<확장자(exe또는 dll)>.intermediate(또는 embed).manifest 파일을 보실 수 있습니다. 이를 열어보면 다음과 같습니다.

<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level='asInvoker' uiAccess='false' />
      </requestedPrivileges>
    </security>
  </trustInfo>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
    </dependentAssembly>
  </dependency>
</assembly>


(위 파일을 Release로 컴파일을 한후에 생성된 manifest 파일입니다.)
여기서 중요한 것은 굵은 글씨체로 표시한 부분인데 이 부분이 참조할 dll 파일들의 경로와 버젼등의 정보를 표시한 것입니다. 이것을 찾아야 하는데 이게 없기 때문에 프로그램이 실행되지 않고 에러가 나오는 것입니다.

여기서 Microsoft.VC90.CRT라는 디렉토리를 찾게 되는데 찾는 디렉토리의 순서가 다음과 같기 때문에 다음의 어떠한 경우라도 속하면 프로그램은 이상없이 실행될 수 있습니다.

  1. WinSxS하위의 Side-by-side가 속한 디렉토리, 그러니까. 위와 같은 경우에는 "C:/Windows/WinSxS/x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_bcb86ed6ac711f91" 를 찾습니다.
  2. 어플이 있는 디렉토리에서 해당 DLL 파일, 위와 같은 경우에는 Microsoft.VC90.CRT로 구성된 msvcm90.dll, msvcp90.dll, msvcr90.dll 이 어플과 같이 있으면 됩니다.
  3. 어플이 있는 디렉토리에서 <assemblyname>.manifest 파일
  4. 어플이 있는 디렉토리에서 <assemblyname>디렉토리 하위에 해당 DLL 파일
  5. 어플이 있는 디렉토리에서 <assemblyname>/<assemblyname>.manifest 파일
그러므로 위와 같이 해당 파일이 dll 파일이 적절히 있다면 문제없이 실행될 것입니다. 여기서 assemblyname은 위와 같은 경우에는 Microsoft.VC90.CRT가 해당됩니다.

첫번째에 바로 검색될 수 있게 하기위해서는 참조하는 dll들을 자동으로 설치해주는 재배포 파일을 설치하면 됩니다. 재배포파일은 http://www.microsoft.com/downloads/deta ··· 62a191ee 에서 다운로드할 수 있습니다.

그런데 만약 Debug로 컴파일이 되었다면 Microsoft.VC90.DebugCRT가 더 추가되어 있을 것입니다.
제도 이것때문에 삽질을 했는데 분명 Release로 컴파일을 했는데. 컴파일 옵션에 _DEBUG가 들어가 있어서 일부가 Debug로 컴파일 되어서 manifest에서 DebugCRT를 요구했엇는데 VS 2005에서는 재배포 파일에 DebugCRT의 dll이 있는데 VS 2008 용 재배포 파일에는 Debug용은 CRT이든 MFC이든 모두 없으므로 아무리 설치를 했다고 해도 실행이 안되는 건 마찬가지 일 것입니다.

그러므로 이를 해결하기 위해서는 Microsoft.VC90.DebugCRT를 해당 어플이 있는 디렉토리에 복사하던가 컴파일 시 Debug 정보가 없도록 해야 합니다.

Microsoft.VC90.DebugCRT는 <VS2008설치디렉토리>/VC/redist/Debug_NonRedist/x86/에 있습니다.
그리고 컴파일시에 Debug 정보가 있는지의 여부는 object 파일들이 생기는 중간 디렉토리 하위에 있는 manifest에 DebugXXX의 정보가 없으면 됩니다. 있다면 다시 한번 확인해 보세요.


이러한 해결법은 2005에서도 동일하게 적용됩니다. 재배포로 포함되는 dll들은 ATL, CRT, MFC, MFCLOC, OPENMP가 있습니다. 참조하세요.

일주일을 삽질한 결과입니다. ㅜㅜ

제가 문제를 해결할 때 참조한 사이트들입니다.

마이크로소프트에서 설명한 페이지
http://msdn.microsoft.com/ko-kr/library/ms235512.aspx
http://msdn.microsoft.com/ko-kr/library/ms235317.aspx 이는 설치형으로 프로그램을 배포해서 해결하는 방법입니다.

Side-by-side Assembly에 대해서 가장 잘 설명한 페이지
http://www.serious-code.net/moin.cgi/re ··· elibrary

저하고 동일한 고민을 해결하는 과정이 그대로 적혀있군요. 전 이걸보고 힌트를 얻어서 해결할 수 있었습니다. ^^
http://www.panda3d.org/phpbb2/viewtopic ··· f64c61b5


이올린에 북마크하기(0) 이올린에 추천하기(0)

2009/06/05 16:58 2009/06/05 16:58
Trackback Address :: http://zemy.net/tc/zemyblue/trackback/162
  • zemyblue | 2009/06/05 17:06 | PERMALINK | EDIT/DEL | REPLY

    MS에서 나름 머리쓴다고 해서 만든 것때문에 프로그래머가 여러번 좌절을 하게 만드네요. ㅡㅜ 그래도 오뚜기처럼 꿋꿋하게 ...ㅡㅡ

[로그인][오픈아이디란?]
Name
Password
Homepage

Secret

gcc compile option :: 2009/01/30 11:44

자주 사용하는 gcc compile option...
가끔은 아주 기초적인 것도 까먹는다. ㅡㅜ 나이가 들었나?

Option 설명
-c file 해당 file을 compile
-o file 실행 파일명을 file로 설정함
-Wn

Warning Level을 n으로 설정함.

대부분의 경우 모든 warning message를 보기위해 -Wall로 설정함

-Ipath Include directory를 path로 설정함
-Lpath Link를 위한 Library를 directory를 path로 설정함
-llib Link시 해당 lib를 같이 link하게 함
-v gcc의 version을 출력
-On

Optimize Level을 n으로 설정함

이 option을 주면 실행파일의 크기가 작아지고, 실행속도가 빨라지나

그만큼 위험성이 따름.

대부분의 경우 -O1 또는 -O2를 사용함

이올린에 북마크하기(0) 이올린에 추천하기(0)

2009/01/30 11:44 2009/01/30 11:44
Trackback Address :: http://zemy.net/tc/zemyblue/trackback/144
[로그인][오픈아이디란?]
Name
Password
Homepage

Secret
< PREV |  1  |  2  |  3  |  4  |  5  |  ...  14  |  NEXT >