2011-02-03 4 views
0

Я пытаюсь скомпилировать программное обеспечение для захвата пакетов с открытым исходным кодом под названием JPCAP (http://netresearch.ics.uci.edu/kfujii/Jpcap/doc/). Я пытаюсь создать это программное обеспечение на процессоре ARM. При выполнении make я получаю следующую ошибку. Я разработчик java, и я использую этот JPCAP в своем приложении Java. Пожалуйста, помогите мне понять эту ошибку.Компиляция программных продуктов OpenSource Packet Capture

Simplified Make Command: 
    gcc -fPIC -I/home/skolli/native/java/include -I/home/skolli/native/java/include/linux -I/usr/include *.c -o libjpcap.so -lp 
    cap 

Error: 

init.c:(.text+0x30): undefined reference to `main' 
collect2: ld returned 1 exit status 
+1

Почему вы не следуя [инструкции] (http://netresearch.ics.uci.edu /kfujii/Jpcap/doc/install.html)? Ни один из параметров платформы в Makefile не указывает '-fPIC', а для Linux требуется' -shared'. – genpfault

+0

Это уже был загружен и доступен на упаковке. Я просто взял его. Я изменил его, и теперь он работает отлично. Спасибо. – M99

ответ

0

Да, genpfault этого права, как правило, шаги документированы как «./configure» и затем замыкающие, и „сделать установку“.

В противном случае, компиляция для создания общих библиотек, например, следующим образом:

НКУ -fpic -c foo.c НКУ -fpic -c bar.c

И объединить foo.o и бар. о в общей библиотеке в

НКУ -shared -o libshared.so foo.o bar.o

Смежные вопросы