Hi, I feel a bit stupid right now. The output is:
--- LINK sxiv /usr/local/lib/libImlib2.so.6.0: warning: warning: strcpy() is almost always misused, please use strlcpy() /usr/local/lib/libImlib2.so.6.0: warning: warning: sprintf() is often misused, please use snprintf() /usr/X11R6/lib/libX11.so.16.1: warning: warning: strcat() is almost always misused, please use strlcat() /usr/lib/crt0.o: In function `_start': (.text+0x5a): undefined reference to `main' collect2: ld returned 1 exit status *** Error 1 in /home/caoc/code/suckless/sxiv (Makefile:30 'sxiv': cc -L/usr/X11R6/lib -L/usr/local/lib -o sxiv -lImlib2 -lX11 -lXft -lgif ...) --- I modified config.mk and Makefile (they are attached), so OpenBSD's make can start at least. Someone please take a glance with fresh eyes. Thanks -- caóc
SRCDIR := . PREFIX := /usr/local MANPREFIX := $(PREFIX)/man CC ?= gcc CFLAGS += -std=c99 -Wall -pedantic CPPFLAGS += -I/usr/X11R6/include -I/usr/X11R6/include/freetype2 -D_XOPEN_SOURCE=700 LDFLAGS += -L/usr/X11R6/lib -L/usr/local/lib # autoreload backend: inotify/nop AUTORELOAD := inotify
VERSION := git-20171006 all: sxiv include config.mk VPATH := $(SRCDIR) CPPFLAGS += -I. -DVERSION=\"$(VERSION)\" -DHAVE_GIFLIB=$(HAVE_GIFLIB) -DHAVE_LIBEXIF=$(HAVE_LIBEXIF) DEPFLAGS := -MMD -MP LDLIBS := -lImlib2 -lX11 -lXft -lgif -lexif SRC := autoreload_$(AUTORELOAD).c commands.c image.c main.c options.c thumbs.c util.c window.c DEP := $(SRC:.c=.d) OBJ := $(SRC:.c=.o) $(OBJ): config.h Makefile .c.o: @echo "CC $@" $(CC) $(CFLAGS) $(CPPFLAGS) $(DEPFLAGS) -c -o $@ $< config.h: @echo "GEN $@" cp $(SRCDIR)/config.def.h $@ sxiv: $(OBJ) @echo "LINK $@" $(CC) $(LDFLAGS) -o $@ $^ $(LDLIBS) clean: rm -f $(OBJ) $(DEP) sxiv install: all @echo "INSTALL bin/sxiv" mkdir -p $(DESTDIR)$(PREFIX)/bin cp sxiv $(DESTDIR)$(PREFIX)/bin/ chmod 755 $(DESTDIR)$(PREFIX)/bin/sxiv @echo "INSTALL sxiv.1" mkdir -p $(DESTDIR)$(MANPREFIX)/man1 sed "s!PREFIX!$(PREFIX)!g; s!VERSION!$(VERSION)!g" sxiv.1 > $(DESTDIR)$(MANPREFIX)/man1/sxiv.1 chmod 644 $(DESTDIR)$(MANPREFIX)/man1/sxiv.1 @echo "INSTALL share/sxiv/" mkdir -p $(DESTDIR)$(PREFIX)/share/sxiv/exec cp exec/* $(DESTDIR)$(PREFIX)/share/sxiv/exec/ chmod 755 $(DESTDIR)$(PREFIX)/share/sxiv/exec/* uninstall: @echo "REMOVE bin/sxiv" rm -f $(DESTDIR)$(PREFIX)/bin/sxiv @echo "REMOVE sxiv.1" rm -f $(DESTDIR)$(MANPREFIX)/man1/sxiv.1 @echo "REMOVE share/sxiv/" rm -rf $(DESTDIR)$(PREFIX)/share/sxiv .PHONY: all clean install uninstall .SUFFIXES: $(V).SILENT: -include $(DEP)