<div dir="ltr">Hi Justin, <div><br></div><div>Thanks for your response!  The clang & llvm I'm using was built from source.  </div><div><br></div><div>Below is the output of compiling with -v.  Any suggestions would be appreciated!</div><div><br></div><div><div><b>clang version 3.9.0 (trunk 270145) (llvm/trunk 270133)</b></div><div><b>Target: x86_64-unknown-linux-gnu</b></div><div><b>Thread model: posix</b></div><div><b>InstalledDir: /usr/local/bin</b></div><div><b>Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.8</b></div><div><b>Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.8.4</b></div><div><b>Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9</b></div><div><b>Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.3</b></div><div><b>Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.8</b></div><div><b>Candidate multilib: .;@m64</b></div><div><b>Candidate multilib: 32;@m32</b></div><div><b>Candidate multilib: x32;@mx32</b></div><div><b>Selected multilib: .;@m64</b></div><div><b>Found CUDA installation: /usr/local/cuda</b></div><div><b> "/usr/local/bin/clang-3.9" -cc1 -triple nvptx64-nvidia-cuda -aux-triple x86_64-unknown-linux-gnu -S -disable-free -main-file-name scalarProd.cu -mrelocation-model static -mthread-model posix -mdisable-fp-elim -fmath-errno -no-integrated-as -fcuda-is-device -target-cpu sm_50 -v -dwarf-column-info -debugger-tuning=gdb -resource-dir /usr/local/bin/../lib/clang/3.9.0 -I ../ -I /usr/local/cuda-7.0/samples/common/inc -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8 -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/x86_64-linux-gnu/c++/4.8 -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/x86_64-linux-gnu/c++/4.8 -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8/backward -internal-isystem /usr/local/include -internal-isystem /usr/local/bin/../lib/clang/3.9.0/include -internal-externc-isystem /include -internal-externc-isystem /usr/include -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8 -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/x86_64-linux-gnu/c++/4.8 -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/x86_64-linux-gnu/c++/4.8 -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8/backward -internal-isystem /usr/local/cuda/include -include __clang_cuda_runtime_wrapper.h -fdeprecated-macro -fno-dwarf-directory-asm -fdebug-compilation-dir /mnt/wtf/workspace/cuda/gpu-race-detection/cuda-compressed-conflict-detection/scalarProd -ferror-limit 19 -fmessage-length 144 -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -o /tmp/scalarProd-32a530.s -x cuda scalarProd.cu</b></div><div><b>hooklib.so loading.</b></div><div><b>clang -cc1 version 3.9.0 based upon LLVM 3.9.0svn default target x86_64-unknown-linux-gnu</b></div><div><b>ignoring nonexistent directory "/include"</b></div><div><b>ignoring duplicate directory "/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/x86_64-linux-gnu/c++/4.8"</b></div><div><b>ignoring duplicate directory "/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8"</b></div><div><b>ignoring duplicate directory "/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/x86_64-linux-gnu/c++/4.8"</b></div><div><b>ignoring duplicate directory "/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/x86_64-linux-gnu/c++/4.8"</b></div><div><b>ignoring duplicate directory "/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8/backward"</b></div><div><b>ignoring duplicate directory "/usr/local/include"</b></div><div><b>ignoring duplicate directory "/usr/local/bin/../lib/clang/3.9.0/include"</b></div><div><b>ignoring duplicate directory "/usr/include"</b></div><div><b>#include "..." search starts here:</b></div><div><b>#include <...> search starts here:</b></div><div><b> ..</b></div><div><b> /usr/local/cuda-7.0/samples/common/inc</b></div><div><b> /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8</b></div><div><b> /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/x86_64-linux-gnu/c++/4.8</b></div><div><b> /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8/backward</b></div><div><b> /usr/local/include</b></div><div><b> /usr/local/bin/../lib/clang/3.9.0/include</b></div><div><b> /usr/include</b></div><div><b> /usr/local/cuda/include</b></div><div><b>End of search list.</b></div><div><b><br></b></div><div><b> "/usr/local/cuda/bin/ptxas" -m64 -O0 --gpu-name sm_50 --output-file /tmp/scalarProd-181f7e.o /tmp/scalarProd-32a530.s</b></div><div><b>ptxas fatal   : Unresolved extern function '__nv_mul24'</b></div><div><b>clang-3.9: error: ptxas command failed with exit code 255 (use -v to see invocation)</b></div></div><div><b><br></b></div><div>Thanks!</div><div>Yuanfeng</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Aug 1, 2016 at 1:04 AM, Justin Lebar <span dir="ltr"><<a href="mailto:jlebar@google.com" target="_blank">jlebar@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi, Yuanfeng.<br>
<br>
What version of clang are you using?  CUDA is only known to work at<br>
tip of head, so you must build clang yourself from source.<br>
<br>
I suspect that's your problem, but if building from source doesn't fix<br>
it, please attach the output of compiling with -v.<br>
<br>
Regards,<br>
-Justin<br>
<div class="HOEnZb"><div class="h5"><br>
On Sun, Jul 31, 2016 at 9:24 PM, Chandler Carruth <<a href="mailto:chandlerc@google.com">chandlerc@google.com</a>> wrote:<br>
> Directly CC-ing some folks who may be able to help.<br>
><br>
> On Fri, Jul 29, 2016 at 6:27 AM Yuanfeng Peng via llvm-dev<br>
> <<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>> wrote:<br>
>><br>
>> Hi,<br>
>><br>
>> I was trying to compile scalarProd.cu (from CUDA SDK) with the following<br>
>> command:<br>
>><br>
>>  clang++ -I../ -I/usr/local/cuda-7.0/samples/common/inc<br>
>> --cuda-gpu-arch=sm_50 scalarProd.cu<br>
>><br>
>>  but ended up with the following error:<br>
>><br>
>> ptxas fatal   : Unresolved extern function '__nv_mul24'<br>
>><br>
>> Seems to me that libdevice was not automatically linked.  I wonder what<br>
>> flags I need to pass to clang to have the code linked against libdevice?<br>
>><br>
>> Thanks!<br>
>> Yuanfeng Peng<br>
>> _______________________________________________<br>
>> LLVM Developers mailing list<br>
>> <a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a><br>
>> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
</div></div></blockquote></div><br></div>