2017-11-22 11 views
1

FREEWRAP.EXE를 사용하여 tcl 파일을 exe 파일로 변환하려고했습니다. 대부분의 파일에서 작동하지만 항상 실패하는 "load TLTcl.dll"코드 줄이 포함 된 파일이 하나 있습니다.tcl 파일을 exe 파일로 변환하지 못했습니다.

activetcl로 tcl 파일을 실행할 때 괜찮 았습니다. tcl 파일을 exe 파일로 변환하고 TLTcl.dll을 같은 폴더에 넣으므로 실행하는 동안 exe는 항상 중단됩니다.

tcl을 exe로 바꿀 때 tcl 파일에 dll 파일을로드하는 방법이 궁금합니다. 감사합니다.

puts "Starting FLASH script" 
puts "FLASH write will be performed now, make sure you have an extra flash... " 
#load 10 lira tcl DLL 
load TLTcl.dll 

답변

0

TLTcl.dll 그것이 (아마도 이름에 버전 번호) 진짜 tcl.dll에 연결하고 freewrap가 사용하지 않음을 의미 스텁 지원으로 구축되지 않은 것처럼 소리; 정적으로 링크 된 빌드를 사용하여 전체 시스템을 단순 재배포 가능 파일로 만들 수 있습니다.

스텁 지원을 사용하도록 TLTcl.dll을 다시 빌드해야합니다 (Tcl 확장을 구현하는 DLL이라고 가정). 모든 파일을 컴파일 할 때 USE_TCL_STUBS 전처리 기 기호를 정의하고 정적 라이브러리 tclstub에 연결하기 때문에 일반적으로 너무 어렵지 않습니다. 파일 이름에 버전 번호가 포함되어 있습니다 (그리고 컴파일 할 Tcl 헤더의 버전 및 과 연결하는 스터브 라이브러리는과 일치해야 함). Tcl API의 속성은 Tcl 8.5 스텁 API를 기반으로 빌드하면 Tcl 8.6 인터프리터에로드 할 수 있다는 점에 유의하십시오.


& 단검 (당신은 아직 사용되지 않도록 활성 아직 개발 인 8.7까지 사실, 앞으로의 호환성의 수준이 약 8.0.6 & 단검에서입니다.) ; 이것은 상용 파트너에게만 릴리스 된 버전입니다. 다른 사람들은 모두 을 사용하여 버전을 지원했습니다.