Cygwin에서 컴파일한 파일을 리눅스에서 실행 가능하나요?

dong1036의 이미지

좀 터무니 없는 질문이라서...

Cygwin에서 gcc로 컴파일한 프로그램이..

페도라 같은 환경에서 실행이 되나요?

테스트를 해보고 싶은데..

리눅스를 따로 안 깔아놔서.. --_-''

답변 부탁드립니다.

keedi의 이미지

안되지 않나요? 음...

---------------------------
Smashing Watermelons~!!
Whatever Nevermind~!!

Keedi Kim

----
use perl;

Keedi Kim

dong1036의 이미지

흑.. 흑흑..

리눅스를 깔아야 하는군요.. -_-

음 냐냐~

mengguo의 이미지

되요.

많이 배울께요~V_V 내가 알면 배워두 주구요~~ 웬걸~Q_Q

dong1036의 이미지

...

안된다는 분도 계시고.. 된다는 분도 계시고.. -0-

음 냐냐~

doraq의 이미지

MS Windows에 리눅스같은 환경을 제공하는거잖아요.
그러니 바이너리는 당연히 실행안되구요.
소스도 컴파일 옵션에 따라 MS쪽에 가까운지 linux에 호환되는지 나뉩니다.

bushi의 이미지

좀 꼬이는군요.
별로 관계가 없는 여러 분야의 기술을 싸잡아 질문하시니.

cygwin 은 일종의 wrapper 입니다. 환경을 posix 비스무리하게 만들어주는 것이 전부입니다.
/etc/xxx 를 %CYGWIN_ROOT%\etc\xxx 처럼 바꿔준다던가하는 등.

컴파일러의 결과물은 컴파일러에 의존적입니다.
무슨 말이냐면, windows PE 형식의 실행파일을 만들어 주는 gcc 도 있고,
linux elf 형식의 실행파일을 만들어 주는 gcc 도 있다는 겁니다.

어떤 컴파일러를 어떤 환경에서 돌리느냐와 그 컴파일러의 최종 결과물이 뭐냐는 것은 별로 관련이 없습니다.
(이론적으로) arm linux 에서 x86 windows 용의 PE 실행파일을 만들 수도 있다는 얘깁니다.

그렇다면,
x86 windows 용의 PE 실행파일을 x86 linux 에서 실행시키는 것이 불가능한가 ?
arm linux 용의 elf 실행파일을 x86 linux 에서 실행시키는 것이 불가능한가 ?
결론부터 말하면... 가능합니다.
http://kldp.org/node/92452#comment-436183

가능하다는 결론이 나오긴 했지만,
아무래도 질문의 의도와는 좀 엇나간 답변이 될 테지요.

OTL

haze11의 이미지

cygwin에서 리눅스용으로 컴파일하면 리눅스에서 동작 하겠죠.
반대로 리눅스에서 윈도용으로 컴파일하면 윈도에서 동작 합니다. =.=