makefile - Configure generates additional directories on x86_64 with clang -
i'm trying build libjit source on mac os x yosemite (using clang) following commands:
./auto_gen.sh ./configure --prefix=/path/to/my/own/directory make make install
after found linker reported library-not-found error clang test.c -o test -ljit
command. checked directory library installed, , noticed installed /usr/local/lib/x86_64/libjit*
instead of /usr/local/lib/libjit*
, leaded linking error.
i built library on archlinux box , fine. comparing 2 makefiles generated on different oses, saw libdir
variables differed.
i googled , went pages talking multiarch on debian, i'm not sure if problem has mechanism.
so how can change installation directory /usr/local/lib
other libraries? or, if right way, how can make linker work correctly?
after spending time on configure script, found piece of code: 448 if test x$gcc = xyes ; 449 multi_os_directory=`$cc -print-multi-os-directory` 450 case $multi_os_directory in 451 .) ;; # avoid trailing /. 452 *) libdir=$libdir/$multi_os_directory;; 453 esac 454 fi
, surely cause of problem. clang -print-multi-os-directory
prints x86_64
, gcc
prints '.' same option.
Comments
Post a Comment