저는 TBB를 사용하는 Maplink라는 회사의 인텔 TBB 라이브러리와 API를 모두 사용하는 응용 프로그램을 작성하고 있습니다. 문제는 내 응용 프로그램과 Maplink API가 내 응용 프로그램의 바이너리가 들어있는 디렉토리에서 TBB.dll을로드하려고한다는 것입니다. Maplink가 API와 함께 제공 한 TBB.dll 버전은 내 응용 프로그램이 요구하는 버전과 다르며 둘 다 응용 프로그램의 실행 가능 디렉토리에 공존 할 수 없습니다. Maplink API가 사용하는 TBB.dll의 잘못된 버전을로드하지 않도록 TBB를 내 응용 프로그램에 정적으로 연결하는 것 외에 다른 옵션이 있습니까?제 3 자 라이브러리에 내 응용 프로그램이 수행하는 동일한 DLL의 다른 버전이 필요합니다.
1
A
답변
2
주석에서 언급했듯이 최신 버전의 tbb.dll을 응용 프로그램 디렉터리에 넣을 수 있으며 응용 프로그램과 사용하는 타사 라이브러리 모두에서 제대로 작동해야합니다. 예를 들어 최신 버전 인 TBB 4.2는 TBB 2.0 이전 버전과 이진 호환됩니다.
3
현실 세계에서는 동일한 DLL의 다른 버전을 혼합하는 것은 좋지 않습니다. 실제로 플랫폼을 정렬해야합니다. 그것은 아무것도 지옥 지옥이라고하지 않습니다.
여러 버전을 한꺼번에 허용하는 경우 이는 바로 TBB.dll
까지입니다. TBB의 버전과 코드를 정적으로 연결할 수는 있지만 그렇게 할 때 정적으로 링크 된 심볼이 동적으로 표시되지 않도록해야합니다 (컴파일러 컬렉션 종속 링커 옵션). TBB에 의존하는 코드는 아마도 maplink 로의 링크를 포함하는 별도의 링커 단계로 연결되어야합니다. 그리고 응용 프로그램은 TBB.dll
에 다시 연결하지 않고 링크해야합니다.
적어도 리눅스에서는 so
개의 파일에서 작동 할 수 있습니다.
관련 문제
- 1. 제 3 자 라이브러리에 의해 예외가 발생했습니다.
- 2. 제 3 자 라이브러리에 동적 EntityManager를 주입하는 방법
- 3. 창문에 제 3 자 응용 프로그램을 열거하십시오.
- 4. 일부 제 3 자 라이브러리에 대한 로그백 기본값 디버그
- 5. 제 3 자 https 전달?
- 6. 제 3 자 라이브러리에 약속을 전달할 수없는 경우 어떻게해야합니까?
- 7. 제 3 자 응용 프로그램에서 내 pdf 파일을 읽지 않습니다
- 8. 제 3 자 라이브러리 차단 방법 gcm
- 9. 암호화 제 3 자 인증
- 10. 제 3 자 API로 스터 빙/조롱이 필요합니다.
- 11. 오류를 "응용 프로그램이 설치되어 *** 해당 어셈블리가 필요합니다"
- 12. 봄 제 3 자 인증
- 13. 제 3 자 코멘트 시스템
- 14. 제 3 자 서비스로 테스트하기
- 15. Kohana : 제 3 자 앱을 설정하는 방법
- 16. Mule - 런타임에 제 3 자 라이브러리 업데이트
- 17. 제 3 자 클래스 조롱
- 18. 제 3 자 또는 코드
- 19. 제 3 자 dll이란 무엇입니까?
- 20. 제 3 자 항아리 축소 작업
- 21. 제 3 자 통합 수동 부여
- 22. log4net - 제 3 자 dll 로그 파일 내
- 23. 제 3 자 응용 프로그램없이 django 모델의 여러 필드 검색
- 24. 확인 제 3 자 소프트웨어 버전
- 25. 제 3 자 라이브러리와 코드 서명 문제
- 26. 서로 다른 '사일로'에 별도의 응용 프로그램이 필요합니다
- 27. 제 3 자 어셈블리를 하위 폴더로 복사
- 28. 제 3 자 사이트에서 내 ASP.NET MVC 앱에 게시
- 29. 사용 NFC는 제 3 자 소프트웨어
- 30. C + +에서 제 3 자 라이브러리 사용
최신 버전의 tbb.dll이 둘 다 작동하지 않습니까? – egur
인텔은이 문제를 해결하고 싶지 않습니다 (http://software.intel.com/en-us/forums/topic/286809). –