--- Makefile.orig	2020-11-29 05:33:57 UTC
+++ Makefile
@@ -3,7 +3,7 @@ MAJOR_VERSION := $(shell echo $(VERSION) | cut -d'.' -
 
 # installation directory (/usr/local by default)
 DESTDIR ?= /usr/local
-MANDIR ?= share/man/man3
+MANDIR ?= /usr/local/share/man/man3
 
 SRC := src/cs50.c
 INCLUDE := src/cs50.h
@@ -28,6 +28,12 @@ else ifeq ($(OS),Darwin)
 	LIB_MAJOR := $(BASENAME)-$(MAJOR_VERSION).dylib
 	LIB_VERSION := $(BASENAME)-$(VERSION).dylib
 	LINKER_FLAGS := -Wl,-install_name,$(LIB_VERSION)
+# FreeBSD
+else ifeq ($(OS),FreeBSD)
+        LIB_BASE := $(BASENAME).so
+        LIB_MAJOR := $(BASENAME).so.$(MAJOR_VERSION)
+        LIB_VERSION := $(BASENAME).so.$(VERSION)
+        LINKER_FLAGS := -Wl,-soname,$(LIB_VERSION)
 endif
 
 LIBS := $(addprefix build/lib/, $(LIB_BASE) $(LIB_MAJOR) $(LIB_VERSION))
