BinaryBuilder.jl wizard -- No binary artifacts?

I’m trying to create binaries for the fastcluster library, which I would like to then wrap with a wrapper that I’ve written. Unfortunately, I cannot get the wizard to find the shared library that’s the output from make and make install (but it’s there, really, and I can ccall() it on my OSX and Windows machines): I keep getting “The build has produced no binary artifacts”. I’ve tried using a manually written Makefile (the build is really trivial), and using autoconf, always with the same outcome. What am I doing wrong?

My makefile is this:

CC=gcc
CFLAGS=-I.
LDFLAGS = -lm

libfastcluster.so: fastcluster.o
	$(CC) -shared -fPIC -o libfastcluster.so fastcluster.o -lstdc++ $(LDFLAGS)

fastcluster.o: src/fastcluster.cpp
	$(CC) -fPIC -c src/fastcluster.cpp -o fastcluster.o

.PHONY: install
install:
	mkdir -p lib
	mv libfastcluster.so lib/libfastcluster.so

.PHONY: clean
clean:
	rm -f fastcluster.o

and the build process is just make and make install, or, when using autoconf, the standard configure before that.

I’ve noticed https://github.com/JuliaPackaging/BinaryBuilder.jl/issues/200, but believe that this is different since it happens also when I install the output library in the /bin subfolder.

Thanks for any help.

The artifacts are expected to be in the $prefix directory. The install rule should copy the files there.

1 Like

Thank you, that was exactly the piece of information that I was missing.