C++ Builder 10 - Компиляция любого проекта дает ошибку?

Я только что установил пробную версию C++ Builder 10 (Сиэтл), но теперь столкнулся со странной ошибкой при попытке скомпилировать любое (новое или существующее) приложение VCL Forms.

Это чистая установка, никакие настройки не были изменены и т.д. Я использую Windows 10. Как решить эту проблему?

3 ответа

Решение

Это ошибка RSP 11768, которая, я подозреваю, будет исправлена ​​в обновлении 1. См. Также эту ветку форума.

В этом отчете об ошибках есть несколько решений:

  • Добавьте borlndmm.dll в список загруженных с задержкой; рассматриваемый метод никогда не вызывается, поэтому тот факт, что он не найден, не вызывает ошибку времени выполнения
  • Используя impdef, создайте новую библиотеку импорта для менеджера памяти (borlndmm.dll / memmgr.def и удалите два экспорта (__dbk_fcall_wrapper а также dbkFCallWrapperAddr; см. ошибку для деталей)
  • Замените memmgr.lib на версию из XE8

Я думаю, что нашел решение.

  1. Перейти в проект / параметры...
  2. Нажмите "C++ Compiler" и найдите "Use 'classic' Borland Compiler"
  3. Отключить это

В существующих проектах, созданных в предыдущих версиях C++ Builder, это может вызвать следующие ошибки компоновщика:

Неразрешенный внешний '___seh_personality_v0' Нерешенный внешний '__Unwind_SjLj_Register' Неразрешенный внешний '___cxa_begin_catch'
Неразрешенный внешний '___cxa_rethrow' Неразрешенный внешний '___cxa_end_catch' Нерешенный внешний '__Unwind_SjLj_Unregister'
Неразрешенный внешний '__Unwind_Resume' Неразрешенный внешний '___cpp_terminate'

Чтобы удалить эти ошибки, перейдите к

  1. Проект / Options...
  2. C++ (общие параметры) / путь к библиотеке
  3. Удалить '$(BDS)\lib\win32\release\'

Это случилось со мной, когда я установил более старую версию RAD Studio после того, как более новая версия была уже установлена. В моем случае я установил XE2 после того, как XE10 уже был установлен.

В моем Windows PATH каталоги более новой версии (XE10)

например: C:\Program Files (x86)\Embarcadero\Studio\17.0\bin

были перечислены после каталогов старой версии (XE2)

например: C:\Program Files (x86)\Embarcadero\RAD Studio\9.0\bin

поэтому вместо актуальной была найдена старая версия borlndmm.dll.

Поэтому я просто переместил новые записи PATH перед новыми, перезапустил RAD Studio и все было хорошо. Я имею в виду,... как это было раньше.

Другие вопросы по тегам