Meu Google-fu encontrou os arquivos de origem que você está tentando compilar:
e, em particular:
Simplesmente executando make
você pode criar all as coisas que precisam ser compiladas ( make hungarian
é o comando errado).
Saída de make
process:
gcc -O3 -Wall -I. -c hungarian.c
hungarian.c: In function ‘hungarian_routine_two’:
hungarian.c:432:14: warning: variable ‘newsum’ set but not used [-Wunused-but-set-variable]
int oldsum,newsum;
^
gcc -O3 -Wall -I. -c -o makeprob.o makeprob.c
ar cr libhungarian.a hungarian.o makeprob.o
gcc -O3 -Wall -I. -o test test.c -L. -lhungarian
gcc -O3 -Wall -I. -o timetest timetest.c -L. -lhungarian -lm
Agora você tem dois arquivos executáveis ( test
e timetest
) e um arquivo de biblioteca estática ( libhungarian.a
).
Para executar os programas de teste:
./test
./runtest
Se você quer escrever um programa que usa esta biblioteca, você precisa #include "hungarian.h"
no seu arquivo myprogram.c
e compilá-lo com um comando similar aos dos programas de teste:
gcc -O3 -Wall -I. -o myprogram myprogram.c -L. -lhungarian
Sugiro que você faça uma cópia de test.c
( cp test.c myprogram.c
) e modifique-a para atender às suas necessidades.
Como você pode ver, há alguma mágica acontecendo aqui: man
páginas de make
e gcc
devem lançar alguns raios de luz sobre ela.