Хочу воспользоваться библиотекой FAT SD "EFSL".
Компилирую либу, получаю "libefsl.a", перемещаю в директорию с библиотеками (та которая фигурируетв ключе -L./microblaze_0/lib/), копирюю все заголовочные файлы в дирикторию с заголовочными файлами (та которая фигурируетв ключе -I./microblaze_0/include/).
Создаю следующий пример
Код
#include <efs.h>
void hang(void);
int main (void) {
EmbeddedFileSystem efs;
EmbeddedFile filer , filew;
char buf [ 512 ];
if ( efs_init(&efs,0) !=0 ) {
hang();
}
}
void hang(void);
int main (void) {
EmbeddedFileSystem efs;
EmbeddedFile filer , filew;
char buf [ 512 ];
if ( efs_init(&efs,0) !=0 ) {
hang();
}
}
Компилирую, получаю
Код
mb-gcc -O2 tmp/tmp.c -o tmp/executable.elf \
-mno-xl-soft-mul -Wl,-T -Wl,tmp/tmp_linker_script -g -I./microblaze_0/include/ -L./microblaze_0/lib/ \
-xl-mode-executable \
/cygdrive/c/DOCUME~1/3.14/LOCALS~1/Temp/ccsTH7bp.o: In function `main':
/cygdrive/d/PI/Projects/Other/Spartan3Board/Tests/Ethernet_tst_2/tmp/tmp.c:32: undefined reference to `efs_init'
/cygdrive/d/PI/Projects/Other/Spartan3Board/Tests/Ethernet_tst_2/tmp/tmp.c:33: undefined reference to `hang'
collect2: ld returned 1 exit status
make: *** [tmp/executable.elf] Error 1
-mno-xl-soft-mul -Wl,-T -Wl,tmp/tmp_linker_script -g -I./microblaze_0/include/ -L./microblaze_0/lib/ \
-xl-mode-executable \
/cygdrive/c/DOCUME~1/3.14/LOCALS~1/Temp/ccsTH7bp.o: In function `main':
/cygdrive/d/PI/Projects/Other/Spartan3Board/Tests/Ethernet_tst_2/tmp/tmp.c:32: undefined reference to `efs_init'
/cygdrive/d/PI/Projects/Other/Spartan3Board/Tests/Ethernet_tst_2/tmp/tmp.c:33: undefined reference to `hang'
collect2: ld returned 1 exit status
make: *** [tmp/executable.elf] Error 1
Где ошибся?