[cfe-users] can't find binary/executable

Michael Mitchell via cfe-users cfe-users at lists.llvm.org
Fri Apr 21 07:24:43 PDT 2017


Problems been solved. For anyone else with the same question, the problem
was that I wasn't using the clang that I had built the file against (clang
came installed by default on the system). When I ran ./build/bin/clang and
followed the instructions at this tutorial it worked fine

https://clang.llvm.org/docs/ClangPlugins.html

On Fri, Apr 21, 2017 at 10:07 AM, Michael Mitchell <
michaeljohnmitchell at gmail.com> wrote:

> Update,
>
> Sorry about that I found the instructions in the ReadMe for the
> PrintFunctionsDir, but they don't seem to be update or I'm running them
> wrong. The ReadMe says the following:
>
> "This is a simple example demonstrating how to use clang's facility for
> providing AST consumers using a plugin.
>
> Build the plugin by running `make` in this directory.
>
> Once the plugin is built, you can run it using:
> --
> Linux:
> $ clang -cc1 -load ../../Debug+Asserts/lib/libPrintFunctionNames.so
> -plugin print-fns some-input-file.c
> $ clang -cc1 -load ../../Debug+Asserts/lib/libPrintFunctionNames.so
> -plugin print-fns -plugin-arg-print-fns help -plugin-arg-print-fns
> --example-argument some-input-file.c
> $ clang -cc1 -load ../../Debug+Asserts/lib/libPrintFunctionNames.so
> -plugin print-fns -plugin-arg-print-fns -an-error some-input-file.c"
>
> My ".so" file is /usr/local/lib/PrintFunctionNames.so
>
> Whether I run
> clang -cc1 -load ../../Debug+Asserts/lib/libPrintFunctionNames.so -plugin
> print-fns hello.c
>
> or
> clang -cc1 -load /usr/local/lib/PrintFunctionNames.so -plugin print-fns
> hello.c
>
> I get this output
>
> error: unable to load plugin '../../Debug+Asserts/lib/libPrintFunctionNames.so':
> 'Service unavailable'
>
>
> On Fri, Apr 21, 2017 at 9:50 AM, Michael Mitchell <
> michaeljohnmitchell at gmail.com> wrote:
>
>> Hi,
>> my exact question is in paragraph numbered 3 below. The first two
>> paragraphs have prefatory information.
>>
>> 1. I ran the following command to build llvm and clang (with the
>> intention of building the examples),
>>
>> `sudo cmake -DLLVM_BUILD_EXAMPLES=1 -DCLANG_BUILD_EXAMPLES=1
>> -DCMAKE_BUILD_TYPE="Release" ../llvm`
>>
>> 2. After it completed, I ran `make` and `make install`. The output from
>> `make install` showed this (for the PrintFunctions example in
>> /clang/examples)
>>
>> [ 92%] Built target PrintFunctionNames_exports
>>
>> [ 92%] Built target PrintFunctionNames
>>
>> -- Installing: /usr/local/lib/PrintFunctionNames.so
>>
>> 3. Question: is there a step I need to do to run the PrintFunctionNames
>> example?  I can't find a binary/executable?
>>
>> 4. In the directory build/tools/clang/examples, I have this
>>
>> analyzer-plugin
>> clang-interpreter
>> CMakeFiles
>> PrintFunctionNames
>> AnnotateFunctions
>> cmake_install.cmake
>> Makefile
>>
>>
>> 5. In  build/tools/clang/examples/PrintFunctionNames/ I have this
>>
>> cmake_install.cmake
>> Makefile
>> CMakeFiles
>> PrintFunctionNames.exports
>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-users/attachments/20170421/a5fb3a0e/attachment.html>


More information about the cfe-users mailing list