У меня есть статическая библиотека .a с несколькими заголовочными файлами.Я хочу связать его с .o файлами в двоичный файл, используя компилятор Green hills.Я получаю ошибку:
[elxr] (ошибка # 412) неразрешенных символов.
Я пытаюсь указать путь к заголовочным файлампредоставление -I filepath
компоновщику.
Однако, похоже, это не сработает.
Обновлено с кодом.
# Recipe for linking
__GHSRH850_ERRALL += $(__GHSRH850_TARGETERR)
GHSRH850_LIB = SRC\MCU\DROME\RGL\libd1mx_rh850_ghs.a
$(GHSRH850_TARGETEMU): $(__GHSRH850_OBJS) $(GHSRH850_LSCRIPT) $(GHSRH850_LIB) \
$(CORE_MAKPREREQS) | __GHSRH850_DIRS
$(call CORE_REPORTFILE,Linking,$(@F))
$(eval __GHSRH850_ERRDONE += $(__GHSRH850_TARGETERR))
$(GHSRH850_LD) \
$(GHSRH850_LSCRIPT) \
-o $@ \
$(GHSRH850_LIB) \
$(__GHSRH850_OBJS) \
$(GHSRH850_LFLAGS) \
> $(__GHSRH850_TARGETERR)
Файл make довольно большой, поэтому яне могу поставить все это здесь.В основном библиотека добавляется с помощью:
GHSRH850_LIB = file\path\to\libname.a
В флагах добавлен путь к заголовку файла с:
GHSRH850_LFLAGS += -I file\path\to\headers
Другие описания:
GHSRH850_LFLAGS
- Флажки компоновщика
GHSRH850_LSCRIPT
- Файл сценария компоновщика
__GHSRH850_OBJS
- Список объектных файлов
Компилятор, который использует ccrh850.exe.
Код ошибки:
[elxr] (error #412) unresolved symbols: 35
_R_UTIL_DHD_Init from drglgmm_dhd.o
_R_UTIL_DHD_Config from drglgmm_dhd.o
_R_DEV_SQRTF from libd1mx_rh850_ghs.a(r_drw2d_main.o)
_R_VDCE_Sys_HsyncActLevelSet from libd1mx_rh850_ghs.a(r_vdce_api.o)