exe 빌드 기능을 코드로 작성하고 싶습니다 제가 만들기 원하는 프로그램은 사용자에게 문자열을 입력받고 입력받은 문자열을 출력하는 exe 파일을 만든는 프로그램을 만들고 싶은데 어떻게 검색하야 할지도 잘 모르겠네요. 좀 고급 주제일지도 모르겠지만 알려주시면 감사하겠습니다
컴파일러에게 위임 하면 됩니다. 바꿔 말하면, 컴파일러의 도움을 받지 않고 주어진 기능을 구현하려면 상당히 고생해야 합니다.
from subprocess import run c_src = """#include <stdio.h> #include <stdlib.h> int main(){{ return puts("{:s}") >= 0 ? EXIT_SUCCESS : EXIT_FAILURE; }}""".format(''.join("\\x{:02x}".format(c) for c in input().encode('utf-8'))) run(('gcc', '-x', 'c', '-'), input=c_src, universal_newlines=True)
파이썬으로 간단히 짰습니다.
사실 문자열 인코딩과 관련해서 복잡한 문제가 여전히 있긴 합니다. 리눅스에서는 보통 utf-8을 쓰지만, 예컨대 윈도우즈에서는 멀티바이트 문자열이 utf-8이 아닌 경우가 더러 있거든요.
그래서 위 코드는 아마 윈도우즈에서는 안 돌 거에요. 좀 번거로운 문제이기는 한데 해결 못할 문제는 아닙니다. 연습 문제로 남겨 두지요.
WSL 에서는 작동이 가능할까요? 똑같은 윈도우니까 작동이 불가할까요? 윈도우에서 작동하게 하려면 어떻게 해야하는지 힌트라도 주실 수 있나요?
WSL에서는 잘 될겁니다.
안 된다면 locale을 확인해 보시고요.
코드를 실행하면 출력 내용이 빈칸으로 나오고 Enter 를 누르면 끝납니다
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
컴파일러에게 위임 하면 됩니다.
컴파일러에게 위임 하면 됩니다.
바꿔 말하면, 컴파일러의 도움을 받지 않고 주어진 기능을 구현하려면 상당히 고생해야 합니다.
파이썬으로 간단히 짰습니다.
사실 문자열 인코딩과 관련해서 복잡한 문제가 여전히 있긴 합니다. 리눅스에서는 보통 utf-8을 쓰지만, 예컨대 윈도우즈에서는 멀티바이트 문자열이 utf-8이 아닌 경우가 더러 있거든요.
그래서 위 코드는 아마 윈도우즈에서는 안 돌 거에요.
좀 번거로운 문제이기는 한데 해결 못할 문제는 아닙니다. 연습 문제로 남겨 두지요.
WSL 에서는 작동할까요?
WSL 에서는 작동이 가능할까요?
똑같은 윈도우니까 작동이 불가할까요?
윈도우에서 작동하게 하려면 어떻게 해야하는지 힌트라도 주실 수 있나요?
WSL에서는 잘 될겁니다.
WSL에서는 잘 될겁니다.
안 된다면 locale을 확인해 보시고요.
코드를 실행하면 출력 내용이 빈칸으로 나와요
코드를 실행하면 출력 내용이 빈칸으로 나오고 Enter 를 누르면 끝납니다
댓글 달기