Delphi Seattle, Ошибка компиляции: модуль F2051 System.SysUtils был скомпилирован с другой версией "".GetMappedFileName
С тех пор произошло нечто странное.
Проблема:
Я всегда получаю сообщение "Ошибка компиляции: модуль F2051 System.SysUtils был скомпилирован с другой версией".GetMappedFileName ". Точная строка кода не указана. Также та же проблема, если я создаю простой проект с одним вызовом команды sysutils.
Наша ситуация: я и мой коллега работаем над одним проектом. Мы используем JEDI для обмена нашими источниками и отслеживания изменений.
Последнее, я скачивал его измененные источники. Все прошло хорошо, и я был готов идти дальше.
Я обновил все мои файлы и попытался скомпилировать, собрать и запустить новые источники на моем компьютере.
Тогда это стало странным. При компиляции я получил эту ошибку:
F2051 Unit System.SysUtils was compiled with a different version of "".GetMappedFileName
Я проверил наши версии стандартных библиотек Delphi, а также версии других установленных компонентов, и все совпадает. Тогда я пошел на интернет-шоппинг. Я нашел несколько похожих проблем, но ни одно из возможных решений не помогло мне...
Вот некоторые вещи, которые я пробовал:
- настроить небольшой простой проект только с функцией beep из sysUtils
- ремонт дельфи сиэтл
- Посмотрел мой путь к библиотеке, путь просмотра,...
- Очистил dcu от моего проекта
Я также попытался выполнить поиск "dir /s", чтобы найти разные (неправильные?) Версии System.SysUtils.*
Найдено.PAS
- 1 для каждой установленной версии, 14, 15, 16, 17 (не из 14, 15 или 16 в моих путях
- C: \ ProgramData {0DE47792-19BD-4AF4-B9CF-6378FBA44825}\sourcefileswin32\E1F130EB\D08CA8BE
- C: \ Users \ All
Пользователи {0DE47792-19BD-4AF4-B9CF-6378FBA44825}\sourcefileswin32\E1F130EB\D08CA8BE
Найдено.DCU
- Для всех версий (14, 15, 16, 17)
- Для каждой системы экспорта (Android, IOS,..)
- Также в ProgramData
- Также во всех пользователях
Вы можете найти мою библиотеку и путь просмотра в конце этого поста.
Некоторые интернет-сайты, на которых я пытался решить эту проблему:
- Почему мои модули "скомпилированы с другой версией" моих собственных файлов?
- F2051: Модуль%s был скомпилирован с другой версией%s
- https://translate.google.com/translate?hl=en&sl=auto&tl=en&u=http%3A%2F%2Fdelphi4arab.net%2Fforum%2Fshowthread.php%3Fmode%3Dlinear%26tid%3D4700%26pid%3D24332
- [Фатальная ошибка DCC]: модуль F2051 ApFileIO был скомпилирован с другой версией ***.{ApCollections}TLinkList
;
У кого-нибудь есть идея или ключ, чтобы выбраться из этого. Потому что я не могу продолжать ни один из моих проектов, так как это произошло.
Это мой путь к библиотеке для Win32:
$(BDS)\Imports;
$(BDS)\LIB;
$(BDS)\Bin;
$(BDSCOMMONDIR)\Bpl;
$(BDSCOMMONDIR)\Dcp;
$(BDS)\include;
C:\Program Files (x86)\Neos Eureka S.r.l\EurekaLog 7\Lib\Common\;
C:\Program Files (x86)\Neos Eureka S.r.l\EurekaLog 7\Lib\Win32\Release\Studio23\;
C:\Program Files (x86)\Neos Eureka S.r.l\EurekaLog 7\Source\Extras;
$(BDS)\RBuilder\Lib\Win32;
C:\sources\Utilities;
C:\Program Files (x86)\Embarcadero\synaps\source\lib;
C:\Program Files (x86)\Embarcadero\Components;
C:\Program Files (x86)\Embarcadero\EmbeddedWB\Source;
C:\Program Files (x86)\Embarcadero\Ruler;
C:\Program Files (x86)\Embarcadero\paxCompilerXE10\package;
C:\Program Files (x86)\Embarcadero\Studio\17.0\source\rtl\win;
C:\Program Files (x86)\Devart\UniDAC for RAD Studio 10\Lib\Win32;
c:\program files (x86)\embarcadero\tms pack for firemonkey\win32;
C:\Program Files (x86)\Embarcadero\fgx_XE8\Library;$(DXVCL)\Library\RS23;
C:\Program Files (x86)\Embarcadero\RTC;
C:\Program Files (x86)\Embarcadero\Studio\17.0\lib\win32\release
Это мой путь просмотра:
$(BDS)\source\rtl;
$(BDS)\SOURCE\RTL\SYS;
$(BDS)\source\rtl\win;
$(BDS)\source\rtl\common;
$(BDS)\SOURCE\VCL;
$(BDS)\SOURCE\XML;
$(BDS)\source\ToolsAPI;
$(BDS)\SOURCE\PROPERTY EDITORS;
$(BDS)\source\Internet;
$(BDS)\SOURCE\VCL\AppAnalytics;
$(BDS)\SOURCE\IBX;
$(BDS)\source\soap;
$(BDS)\source\Indy10\Core;
$(BDS)\source\Indy10\System;
$(BDS)\source\Indy10\Protocols;
$(BDS)\source\fmx;
$(BDS)\source\databinding\components;
$(BDS)\source\databinding\engine;
$(BDS)\source\databinding\graph;
$(BDS)\source\data;
$(BDS)\source\data\ado;
$(BDS)\source\data\bde;
$(BDS)\source\data\cloud;
$(BDS)\source\data\datasnap;
$(BDS)\source\data\dbx;
$(BDS)\source\data\dsnap;
$(BDS)\source\data\Test;
$(BDS)\source\data\vclctrls;
$(BDS)\source\data\datasnap\connectors;
$(BDS)\source\data\datasnap\proxygen;
$(BDS)\source\DataExplorer;
$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\Common;
$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\Common\dunit;
$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\Common;
$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject;
$(BDS)\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\dunit;
$(BDS)\source\DUnit\src;
$(BDS)\source\DUnit\tests;
$(BDS)\source\Experts;
$(BDS)\source\indy\abstraction;
$(BDS)\source\indy\implementation;
$(BDS)\source\indyimpl;
$(BDS)\source\LiveTile;
$(BDS)\source\Property Editors\Indy10;
$(BDS)\source\soap\wsdlimporter;
$(BDS)\source\Visualizers;
$(BDS)\source\xtab;
$(BDS)\source\DUnit\Contrib\XMLReporting;
$(BDS)\source\DUnit\Contrib\XPGen;
$(BDS)\source\data\rest;
$(BDS)\source\data\firedac;
$(BDS)\source\tethering;
$(BDS)\source\DUnitX;
$(BDS)\source\data\ems;
$(BDS)\source\rtl\net;
$(BDS)\source\FlatBox2D;
$(BDS)\OCX\Servers;
C:\Program Files (x86)\Neos Eureka S.r.l\EurekaLog 7\Source\;
$(DXVCL)\ExpressCore Library\Sources;
$(DXVCL)\XP Theme Manager\Sources;
$(DXVCL)\ExpressGDI+ Library\Sources;
$(DXVCL)\ExpressCommon Library\Sources;
$(DXVCL)\ExpressLibrary\Sources;
$(DXVCL)\ExpressPageControl\Sources;
$(DXVCL)\ExpressDataController\Sources;
$(DXVCL)\ExpressEditors Library\Sources;
$(DXVCL)\ExpressWizard Control\Sources;
$(DXVCL)\ExpressBars\Sources;
$(DXVCL)\ExpressDocking Library\Sources;
$(DXVCL)\ExpressLayout Control\Sources;
$(DXVCL)\ExpressSpreadSheet\Sources;
$(DXVCL)\ExpressExport Library\Sources;
$(DXVCL)\ExpressQuantumTreeList\Sources;
$(DXVCL)\ExpressQuantumGrid\Sources;
$(DXVCL)\ExpressVerticalGrid\Sources;
$(DXVCL)\ExpressMemData\Sources;
$(DXVCL)\ExpressSpellChecker\Sources;
$(DXVCL)\ExpressTile Control\Sources;
$(DXVCL)\ExpressNavBar\Sources;
$(DXVCL)\ExpressSkins Library\Sources;
$(DXVCL)\ExpressPrinting System\Sources;
$(DXVCL)\ExpressPivotGrid\Sources;
$(DXVCL)\ExpressDBTree Suite\Sources;
$(DXVCL)\ExpressOrgChart\Sources;
$(DXVCL)\ExpressFlowChart\Sources;
$(DXVCL)\ExpressMap Control\Sources;
$(DXVCL)\ExpressScheduler\Sources;
$(DXVCL)\ExpressRichEdit Control\Sources;
$(DXVCL)\ExpressGauge Control\Sources
1 ответ
Проблема решена. В пути к библиотеке был один экземпляр, ответственный за проблему.
Я отключил "C:\Program Files (x86)\Embarcadero\Studio\17.0\source\rtl\win;" из библиотеки и все вроде работает сейчас.
Теперь моя задача - выяснить, почему этот файл был в моей библиотеке от моего предшественника, и попытаться выяснить, есть ли в этом каталоге какие-либо "странные" файлы pas / dcu, поэтому он должен быть указан в пути. Но теперь это моя работа, спасибо всем, кто помог мне с отправкой подсказок, чтобы решить ее.
Итак, похоже, что я потерял много времени, сначала искал другие вещи вместо того, чтобы отключить 1 на 1 экземпляров в моем пути к библиотеке. Это совет на сегодня:-)