C++ Builder 10 - Компиляция любого проекта дает ошибку?
3 ответа
Это ошибка RSP 11768, которая, я подозреваю, будет исправлена в обновлении 1. См. Также эту ветку форума.
В этом отчете об ошибках есть несколько решений:
- Добавьте borlndmm.dll в список загруженных с задержкой; рассматриваемый метод никогда не вызывается, поэтому тот факт, что он не найден, не вызывает ошибку времени выполнения
- Используя impdef, создайте новую библиотеку импорта для менеджера памяти (borlndmm.dll / memmgr.def и удалите два экспорта (
__dbk_fcall_wrapper
а такжеdbkFCallWrapperAddr
; см. ошибку для деталей) - Замените memmgr.lib на версию из XE8
Я думаю, что нашел решение.
- Перейти в проект / параметры...
- Нажмите "C++ Compiler" и найдите "Use 'classic' Borland Compiler"
- Отключить это
В существующих проектах, созданных в предыдущих версиях C++ Builder, это может вызвать следующие ошибки компоновщика:
Неразрешенный внешний '___seh_personality_v0' Нерешенный внешний '__Unwind_SjLj_Register' Неразрешенный внешний '___cxa_begin_catch'
Неразрешенный внешний '___cxa_rethrow' Неразрешенный внешний '___cxa_end_catch' Нерешенный внешний '__Unwind_SjLj_Unregister'
Неразрешенный внешний '__Unwind_Resume' Неразрешенный внешний '___cpp_terminate'
Чтобы удалить эти ошибки, перейдите к
- Проект / Options...
- C++ (общие параметры) / путь к библиотеке
- Удалить '
$(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 и все было хорошо. Я имею в виду,... как это было раньше.