Suvayu Ali <fatkasuvayu+linux at gmail.com> writes: > > Yes, I have looked at what the official packages[1] do, I do exactly the > same[2]. Essentially the spec file does the following: > > pushd bindings/ruby > ruby extconf.rb --vendor --with-cflags="%{optflags}" > make %{?_smp_mflags} > popd
I think the problem is contained in the original message. Since we want to create a shared library "notmuch.so" for ruby to import, we need to compile the C files in bindings/ruby with -fPIC. I don't know if this is Debian specific, or ruby version specific, but on my Debian Jessie machine with ruby 2.1, the generated Makefile bindings/ruby/Makefile has CFLAGS = $(CCDLFLAGS) -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC $(ARCH_FLAG) in it even when invoked outside the notmuch build system; e.g. % cd bindings/ruby && ruby extconf.rb I guess the first step is to see if the -fPIC flag is also there on Fedora, and if not, why not. If I look at the builds for 0.19 [1] it seems it is. But notice there it is not required to pass it in to "--with-cflags" d [1] https://kojipkgs.fedoraproject.org/packages/notmuch/0.19/1.fc21/data/logs/x86_64/build.log - I couldn't find x86_64 build logs for 0.20