원격 서버와 통신을 시도하는 haxe 프로그램을 작성했습니다. 나는 C++ 타겟에 성공적으로 컴파일 할 수 있었다. 실행 파일은 시스템에서 정상적으로 실행됩니다. 나는 다른 창 상자에서 동일하게 실행하려고 할 때, 다음과 같은 오류와 함께 실패Haxe - C++ 독립 실행 형 실행 파일 만들기
오류 : 마법처럼 일을 그때 haxe 및 hxcpp을 설치
모듈 표준의 @의 socket_init__0를로드 할 수 없습니다 . exe를 실행할 수있었습니다. 이제는 hxcpp에 대한 의존성이 있음을 이해합니다.
독립 실행 형 응용 프로그램을 만들려는 경우에도 여전히 문제가 해결되지 않았습니다. 몇 가지 연구를 한 후 내 문제를 해결할 수있는 다음 지침에 따라 파일 (ExampleMain.CPP)을 발견했습니다. 그러나, 나는 초심자이고, 따라 가지 않는다. 어떤 사람이 이걸 가지고 나를 걸을 수 있습니까? 감사합니다
ExampleMain.CPP는
이 정적 버전을 연결하는 데 사용할 수있는 예제 주류이다.
CD $ HXCPP/런타임의
haxelib 실행 hxcpp BuildLibs.xml -Dstatic_link
그리고 정적 혼란 스럽다 : 먼저 당신과 함께, 표준 libs와의 정적 버전을 구축해야 ('static_link'전에 여분의 공간 주) : 사용하여 응용 프로그램
haxe - 주요 YourMain -cpp CPP -D static_link
그러면 위의 라이브러리를이 (또는 수정 된 버전) main과 링크해야합니다. VisualStudio 프로젝트를 만들고 $ HXCPP/bin/Windows/(std, regexp, zlib) .lib 및 응용 프로그램 라이브러리의 라이브러리를 추가 할 수 있습니다.
-debug 플래그로 컴파일하면 라이브러리의 이름이 달라집니다.
CL ExampleMain.cpp의 CPP/YourMain.lib $ HXCPP/빈/윈도우/std.lib$ HXCPP을 (user32.lib 만 디버그 버전에 필요) Windows 용 명령 줄에서 연결
/bin/Windows/zlib.lib $ HXCPP/bin/Windows/regexp.lib user32.lib
다른 운영 체제에서는 compile + link 명령이 다릅니다.
g ++ ExampleMain.cpp의 CPP/테스트 - debug.a $ HXCPP/빈/맥/regexp.a$ HXCPP/빈/맥/std.a의 $의 HXCPP/빈/맥 : 여기에 Mac 용 하나입니다 /zlib.a
당신이이 3 (예를 들어, NME) 이외의 다른 정적 라이브러리를 추가 할 경우 당신이 필요가 너무 "-Dstatic_link"플래그 이러한 컴파일, 그들의 "register_prims" 초기화 호출을 호출하는 것입니다 . 여분의 정적 라이브러리를 포함 시키려면 라이브러리 라인에 라이브러리가 필요하며 링크하려면 추가 종속성이 필요할 수 있습니다. 타사 라이브러리의 정적 연결 정적 라이선스에는 라이선스 관련 사항이있을 수 있습니다.