VMware 상에서의 팁

from Info/Tools 2009/01/02 18:05 view 28352
1. 윈도우-Fedora 공유폴더 설정 or /usr/src/linux 가 없을 경우

일단, http://elecviolin.tistory.com/32 을 보고 설치하면 장땡..

문제는 폴더가 없다고 에러가 나는 경우이다.

'What is the location of the directory of C header files
that match your running kernel? [/usr/src/linux/include]'

'The path "/usr/src/linux/include" is not an existing directory.'

실제 경로가 없다. -_ㅡ..

만능설치기 yum으로 해결..
'yum install kernel-devel'

참고 : http://nosyu.pe.kr/1657?category=1

2. 윈도우와 클립보드 공유 and 화면에 리눅스 크기 맞추는 등 꼭 실행시켜놓을 것..

vmware-user

**마우스가 엉뚱한데 찍히는 버그 있음 -_ㅡ;; 어쩌다 이것저것 하다보니 되긴 했는데 잘 모르겠네...**

Tag | ,
오류
/usr/bin/ld: cannot find -lsocket
collect2: ld returned 1 exit status
make: *** [opbroker] 오류 1

해결책
소켓 함수를 컴파일 하기 위헤 필요한 라이브러리 이름은 아직 표준화 되지 않았다.
Sun Solaris 에서는 -lsocket -lnsl 라이브러리 옵션을 필요로 한다.
Linux 의 경우는 단순히 -lnsl 옵션을 필요로 하고, Mac OS X의 경우 외부 라이브러리를 필요로 하지 않는다.
메뉴얼 페이지에서 사용해야할 라이브러리 이름을 확인하자..!!!

네이버!!!
ld는 링커입니다. 일단 메시지로 봐서는 ld가 동작은 했습니다.

문제는 -lsocket인데... 컴파일이나 링크시에 -L 옵션을 사용하지 않으셨으면..

/usr/lib 디렉토리의 라이브러리를 찾게 됩니다.

-l 옵션은 뒤의 라이브러리를 찾는데 libsocket.(라이브러리 확장자) 의 파일을 찾습니다. 확장자로는 a, la, so, sl 등이 사용됩니다.

그래서 -lsocket은 /usr/lib/libsocket.(라이브러리 확장자)를, -lnsl은 /usr/lib/libnsl.(라이브러리 확장자)를 가리킵니다. 만약 -L 옵션을 사용했으면 다른 디렉토리도 뒤집니다. 예를 들어 -L/usr/local/lib을 쓰셨다면 앞에서 언급한 패스 이외에 /usr/local/lib/libsocket.(라이브러리 확장자) 와 /usr/local/lib/libnsl.(라이브러리 확장자) 를 찾게 됩니다.

-lsocket과 -lnsl을 쓰신 것으로 봐서는 솔라리스에서 컴파일을 하시는 듯 한데 솔라리스가 아닌 다른 OS에서 컴파일을 하신다면 옵션을 빼주시면 됩니다.
Tag |

VS2005엔 _GetBaseMessageMap 이게 없는듯 하다. -_-.. 그래서 새로 정의해서 해결해야 한다. 아나..
error C2065: 'GetThisMessageMap' : 선언되지 않은 식별자입니다.
error C2653: 'TheBaseClass' : 클래스 또는 네임스페이스 이름이 아닙니다.
error C2039: 'messageMap' : 'TTaskbarContainer<T>'의 멤버가 아닙니다.
error C2039: '_GetBaseMessageMap' : 'TTaskbarContainer<T>'의 멤버가 아닙니다.

#ifndef __AFXWIN_H__
#include "afxwin.h"
#endif

#if ( _MSC_VER >= 1400) // VC++ 8.0 (.net)

//#ifdef _AFXDLL
#define BEGIN_TEMPLATE_MESSAGE_MAP(theTemplate, theClass, baseClass) \
    PTM_WARNING_DISABLE \
    template <theTemplate>\
    const AFX_MSGMAP* theClass::GetMessageMap() const \
{ return GetThisMessageMap(); } \
    template <theTemplate>\
    const AFX_MSGMAP* PASCAL theClass::GetThisMessageMap() \
{ \
    typedef theClass ThisClass; \
    typedef baseClass TheBaseClass; \
    static const AFX_MSGMAP_ENTRY _messageEntries[] = \
{\

#endif

#else    // VC++6.0

#ifdef _AFXDLL
#define BEGIN_TEMPLATE_MESSAGE_MAP(theTemplate, theClass, baseClass) \
    template <theTemplate> const AFX_MSGMAP* PASCAL theClass::_GetBaseMessageMap() \
        { return &baseClass::messageMap; } \
        template <theTemplate> const AFX_MSGMAP* theClass::GetMessageMap() const \
        { return &theClass::messageMap; } \
        template <theTemplate> AFX_DATADEF const AFX_MSGMAP theClass::messageMap = \
    { &theClass::_GetBaseMessageMap, &theClass::_messageEntries[0] }; \
    template <theTemplate> const AFX_MSGMAP_ENTRY theClass::_messageEntries[] = \
    { \

#else

#define BEGIN_TEMPLATE_MESSAGE_MAP(theTemplate, theClass, baseClass) \
    template <theTemplate> const AFX_MSGMAP* theClass::GetMessageMap() const \
        { return &theClass::messageMap; } \
        template <theTemplate> AFX_DATADEF const AFX_MSGMAP theClass::messageMap = \
    { &baseClass::messageMap, &theClass::_messageEntries[0] }; \
    template theTemplate const AFX_MSGMAP_ENTRY theClass::_messageEntries[] = \
    { \
#endif

#endif
Tag |

익스플로러의 힘은 막강하다.

무려 보기->인코딩 에서 선택되는 방식에 따라서 시스템 전역으로 영향을 끼친다. 어설프게 설정했다가는

한글의 깨진 글씨만을 보게 된다. 아 윈도우~ -_-...

이 문제를 전에 어느 블로그에서 VS 2005에서 한글로된 프로젝트를 실행하지 못하는 문제를 해결하는 법을 보지

않았다면 개고생, 뻘짓을 할 뻔 했다.. 기억은 안나지만 그분에게 고마울 따름이다.

한글이 깨지거나 열리지 않거나 등등이 상황이 발생되면 무조건~ 익스플로러의 보기->인코딩 먼저 보자..ㅠ_ㅠ...

Tag |

링커 도구 오류 LNK2005

from Study/Error 2007/10/23 10:38 view 34399
1. 헤더 파일에 선언과 정의를 동시에 할때 발생 할 수 있다. obj 링크 중복!!

  - 해결법 ( 프로젝트 속성 - 링커 - 명령줄 - /FORCE:MULTIPLE 입력 ) 무시하기-_-..

more..

Tag | ,

 프로세스나 스레드를 생성후 CloseHandle을 해서 레퍼런스 카운트를 1로 만드는건 좋은데...

나중에 핸들을 사용해서 다른 작업을 하고자 할 때 에러 체크를 안해 준다면.. 왜 에러가 났는지 찾기 힘들다.

ㅠ_ㅠ... 그러니깐 닫을땐 쓸일이 있는지 한번 생각해보자..

Tag | ,
#define _WIN32_WINNT 0x0501
 
컴파일러에게 NT시스템이란걸 알려줘야 하지 않을까~



Tag |

재배포 문제

from Study/Error 2007/10/07 10:09 view 28094

1. 방법 : XCopy를 사용하여 배포.
   요약 : C:\Program Files\Microsoft Visual Studio 8\VC\redist\x86 안의 맞는 폴더를 포함하여 배포-_-..

2. VS2005에서 제작한 .exe이 같은 에러가 나올 때.

응용 프로그램 구성이 올바르지 않기 때문에 이 응용 프로그램을 시작하지 못했습니다.
이 문제를 해결하려면 응용 프로그램을 다시 설치하십시오.

more..

Tag | ,