2009-05-20 6 views
2

여러 공급 업체가 여러 구성 요소 패키지를 사용하고 있으며 두 개 모두 디렉토리 구조 내에서 "regexp.pas"단위를 사용할 수 있습니다.델파이의 이름으로 "Duplicate"단위, 구성 요소에 의해 참조 됨, 컴파일 관련 문제

문제는 지금 우리가 컴파일하는 순서에 관계없이 그 중 하나는 여러 다른 단위의 잘못된 버전으로 컴파일되는 것에 대해 불만을 토로한다는 것입니다.

이 문제를 올바르게 처리 할 수있는 방법이 있습니까?

답변

4
  1. 당신은 모든 소스의 재 컴파일을 강제로
  2. 이 (두 업체의) 모든 DCU의의를 삭제하는 장치의 한 버전이 있는지 확인해야합니다.
  3. 두 공급 업체의 패키지를 완전히 제거하십시오. 각 패키지의 모든 추적을 제거하십시오.
  4. & 한 번에 하나씩 설치하십시오.
+0

그건 내가 두려워했던거야. 불행하게도 두 유닛은 같은 이름을 가지지 만 동일한 컨텐츠는 아니며 동일한 유닛의 다른 버전이 아니어도 완전히 다릅니다. 우리는 그 중 하나의 이름을 바꾸려는 경로를 따라 갔으며, 그 중 하나의 중복 된 코드베이스로 살고 있습니다. –

+0

내가 이걸 수집 할 수있는 것이 실제로이 사건의 올바른 대답이 아닐 때, 왜 관심이 없습니까? 배리 켈리 (Barry Kelly)의 대답은 내가 생각하는 그 명예를 가져야한다. – Deltics

+0

이것은 내가 항상 사용해온 프로세스이고 세부적인 단계별로 작동합니다. 포인트 1은 배리의 대답과 동일합니다. –

8

없음이 개 단위는 단위가 정적 패키지를 통해 링크 된 동적으로 링크 또는 여부, 어떤 완전히 연결 및로드 델파이 실행 파일에 같은 이름을 가질 수 없습니다. 결론을 내리면 둘 중 하나의 이름을 변경해야합니다.

+0

예, 예상대로 컴파일되고 실행된다는 점에서 멋지게 작동했습니다. 유닛 중 하나만 사용하도록 코드베이스를 변경하지 않기 때문에 최선을 다할 수 있습니다. –

0

이 해결 방법을 사용할 수 있습니다.

이미 말한 것처럼 두 공급 업체 패키지를 IDE 에 함께로드 할 수 없습니다. 한 번에 하나씩 필요한 경우

그러나, 당신은 각 프로파일에 사용자 정의 이름을주는 "-r" 명령 줄 스위치를 사용하여 두 개의 서로 다른 IDE 프로필을 시작할 수 있습니다. 그런 다음 첫 번째 프로필을 사용하여 Delphi를 시작하고 두 개의 "충돌"패키지 중 첫 번째 패키지를 설치하고 IDE를 닫은 다음 두 번째 프로필로 Delphi를 실행 한 다음 다른 패키지를 설치할 수 있습니다.

각 프로필에 대한 바로 가기를 만든 다음 특정 프로젝트를 수행하는 데 필요한 패키지를로드하는 프로필을 선택하여 Delphi를 실행합니다.

감사합니다. ~/|/| arco.

+0

실제 질문을 읽어보십시오. "해결 방법"은 작동하지 않으며 질문 된 질문에 대답하지 않습니다. –