볼랜드 OMF LIB 형식을 MS VC++ COFF LIB 형식으로 변환하기위한 볼랜드 "coff2omf.exe"와 같은 도구가 있습니까?OMF 형식을 COFF 형식
실제로 델파이에서 .obj 파일을 만들고 MSVC++에서 사용하고 싶습니다.
볼랜드 OMF LIB 형식을 MS VC++ COFF LIB 형식으로 변환하기위한 볼랜드 "coff2omf.exe"와 같은 도구가 있습니까?OMF 형식을 COFF 형식
실제로 델파이에서 .obj 파일을 만들고 MSVC++에서 사용하고 싶습니다.
내가 알고있는 한, 그러한 도구는 없습니다. Arnaud가 언급 한 Agner Fog의 오브젝트 파일 변환기를 사용하여 델파이 유닛을 MSVC 프로그램에 연결할 수있는 COFF .obj로 변환하는 데 성공한 적이 없습니다.
나는 델파이 소스 코드를 컴파일하고 컴파일 한 다음 MSVC에서 생성 된 객체를 사용하는 것이 현실적이지 않다고 생각합니다. 다른 방향도 가능합니다. C 코드를 객체로 컴파일하고 그 객체를 Delphi 실행 파일에 연결할 수 있습니다. 이렇게하면 컴파일 된 객체의 종속성을 해결해야합니다.
그러나 Delphi 객체를 C/C++ 프로그램에 연결하려면 사용자가 사용하는 Delphi RTL의 모든 부분이 필요합니다. 델파이 RTL의 어떤 부분도 사용하지 않는 한 까다로워 질 것입니다. 상황에
나는 옵션이 생각 :
: 조언 해 주셔서 감사합니다.하지만 가능하다고 생각합니다. 내 옛 친구 중 하나는 그가 delphi .obj를 coff로 변환하고 vC++ dll에서 AV 엔진을 사용하여이 작업을 완성했습니다. (내 나쁜 영어로 변명) – Behrooz
나는 아무것도 작동하는 것을 결코 발견하지 못했습니다. Arnaud가 볼랜드 OMF와 함께 작업 할 수있는 도구를 만들 수 없었습니다. –
예, 도구가 있습니다.
this tool을 참조하십시오.
이 유틸리티는 모든 32 비트 및 64 비트 x86 플랫폼에서 COFF/PE, OMF, ELF 및 Mach-O 형식간에 개체 파일을 변환하는 데 사용할 수 있습니다. 오브젝트 파일의 심볼 이름을 수정할 수 있습니다. 플랫폼간에 함수 라이브러리를 빌드, 수정 및 변환 할 수 있습니다. 개체 파일과 실행 파일을 덤프 할 수 있습니다. 또한 SSE4, AVX, AVX2, FMA 및 XOP 명령어 세트를 지원하는 매우 훌륭한 디스어셈블러가 포함되어 있습니다. 소스 코드 포함 (GPL). 조작.
이 http://www.agner.org 웹 사이트는 낮은 수준의 최적화에 대해 알고있는 최고의 자료입니다. 퍼포먼스를 다루고 싶다면 모든 링크 된 정보를 읽을 가치가 있습니다.
그러나 델파이에서 생성 된 .obj
을 VC++와 함께 사용하면 쉽게 구현할 수 없지만 코드의 아주 작은 부분에만 적용됩니다. 코드에 사용 된 Delphi RTL이 필요합니다. 외부 .dll
이 훨씬 좋습니다. 또한 일부 유형 (예 : 문자열 또는 동적 배열)은 VC++에서 쉽게 수정할 수 없습니다.
이 도구를 사용해 본 경험이 있습니까? 나는 그걸로 운이 없었어요. –
나는 그걸로 많은 시간을 보냈습니다. 완벽하게 작동합니다. 하지만 대부분의 시간 동안, 당신은 낮은 수준의 제재 (asm stuff)를 알아야합니다. –
파스칼을 델파이 RTL을 사용하지 않는 것으로 잘라내었을 때, C로 포팅하기는 쉽습니다. –
Delphi 코드는 얼마나 복잡한가요? Delphi RTL의 일부를 사용합니까? –