3.14 0 1 ноября, 2005 Опубликовано 1 ноября, 2005 · Жалоба Проведите небольшой ликбез. Хочу воспользоваться библиотекой 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(); } } Компилирую, получаю 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 Где ошибся? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
makc 192 1 ноября, 2005 Опубликовано 1 ноября, 2005 · Жалоба Не хватает ключика -lefsl Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
3.14 0 1 ноября, 2005 Опубликовано 1 ноября, 2005 · Жалоба Спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
makc 192 1 ноября, 2005 Опубликовано 1 ноября, 2005 · Жалоба Спасибо. <{POST_SNAPBACK}> Пожалуйста. :) Кстати, можно еще в linker-script'e (tmp_linker_script) прописать такую строчку: INPUT(-lefsl) Эффект будет тот же, но такой путь помогает не загромождать командную строку лишними ключами. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться