этот tarball поставляется с Makefile, вы можете видеть, что make install
установит lgmask в / usr / local / bin
cat Makefile
all: gmask umask
CC=gcc
CFLAGS=-O2 -fms-extensions
gmask: libimg/jpeg.o masks.o
$(CC) $(CFLAGS) lgmask.c -o lgmask -lX11 -ljpeg libimg/jpeg.o masks.o
umask: libimg/jpeg.o masks.o
$(CC) $(CFLAGS) unmask.c -o unmask -Wall -ljpeg masks.o libimg/jpeg.o
clean:
rm -f ?*~ libimg/*.o *.o
install: all
install lgmask /usr/local/bin
Автор не включил зависимость libimg / * в tarball ... Я искал вокруг и нашел его в его репозитории svn:
sudo apt-get subversion
svn checkout https://svn.code.sf.net/p/lgmask/code/trunk lgmask-code
теперь этот код зависит от libjpeg, давайте его установим
sudo apt-get install libjpeg62-dev
откуда вы извлекаете исходный код:
cd libimg
gcc -c jpeg.c -ljpeg
cd ..
gcc -O2 -fms-extensions lgmask.c -o lgmask -L/usr/lib libimg/jpeg.o masks.o -ljpeg -lX11
вы получите несколько предупреждений, но он скомпилирует для вас lgmask
~/tmp/lgmask-code$ ./lgmask
usage: lgmask <image name>
К сожалению, когда я попытался запустить его с несколькими jpeg, он выскакивает пустое изображение ... Я пытался скомпилировать его с другой версией libjpeg, но получить тот же результат, дайте мне знать, как это происходит для вас.