Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot get bitcode from transmission #69

Open
legendtang opened this issue Mar 20, 2023 · 3 comments
Open

Cannot get bitcode from transmission #69

legendtang opened this issue Mar 20, 2023 · 3 comments

Comments

@legendtang
Copy link

When compiling transmission, the latest git version, using cmake configured with gllvm, the compiling command fails to append .llvm_ir sections to the binary, while the compilation suceeds.

Here is an example of one compiling command:

cd /root/small/transmission/build/tests/libtransmission && /root/go/bin/gclang++ -DFMT_EXCEPTIONS=0 -DFMT_HEADER_ONLY=1 -DHAVE_GETTEXT -DHAVE_NGETTEXT -DLIBTRANSMISSION_TEST_ASSETS_DIR=\"/root/small/transmission/tests/libtransmission/assets\" -D__TRANSMISSION__ -I/root/small/transmission/libtransmission/.. -I/root/small/transmission/build/libtransmission/.. -isystem /root/small/transmission/cmake/../third-party/fmt/include -isystem /root/small/transmission/third-party/googletest/googletest/include -isystem /root/small/transmission/build/third-party/dht.bld/pfx/include -isystem /root/small/transmission/cmake/../third-party/wide-integer -g -W -Wall -Wextra -Wcast-align -Wexit-time-destructors -Wextra-semi -Wextra-semi-stmt -Wextra-tokens -Wfloat-equal -Wgnu -Winit-self -Wint-in-bool-context -Wmissing-format-attribute -Wnull-dereference -Wpointer-arith -Wredundant-decls -Wredundant-move -Wreorder-ctor -Wreturn-std-move -Wself-assign -Wself-move -Wsemicolon-before-method-body -Wsentinel -Wshadow -Wsign-compare -Wsometimes-uninitialized -Wstring-conversion -Wsuggest-destructor-override -Wsuggest-override -Wuninitialized -Wunreachable-code -Wunused -Wunused-const-variable -Wunused-parameter -Wunused-result -Wwrite-strings -Wformat-security -Wno-sign-compare -std=gnu++17 -MD -MT tests/libtransmission/CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o -MF CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o.d -o CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o -c /root/small/transmission/tests/libtransmission/watchdir-test.cc
INFO:Entering [/root/go/bin/gclang++ -DFMT_EXCEPTIONS=0 -DFMT_HEADER_ONLY=1 -DHAVE_GETTEXT -DHAVE_NGETTEXT -DLIBTRANSMISSION_TEST_ASSETS_DIR="/root/small/transmission/tests/libtransmission/assets" -D__TRANSMISSION__ -I/root/small/transmission/libtransmission/.. -I/root/small/transmission/build/libtransmission/.. -isystem /root/small/transmission/cmake/../third-party/fmt/include -isystem /root/small/transmission/third-party/googletest/googletest/include -isystem /root/small/transmission/build/third-party/dht.bld/pfx/include -isystem /root/small/transmission/cmake/../third-party/wide-integer -g -W -Wall -Wextra -Wcast-align -Wexit-time-destructors -Wextra-semi -Wextra-semi-stmt -Wextra-tokens -Wfloat-equal -Wgnu -Winit-self -Wint-in-bool-context -Wmissing-format-attribute -Wnull-dereference -Wpointer-arith -Wredundant-decls -Wredundant-move -Wreorder-ctor -Wreturn-std-move -Wself-assign -Wself-move -Wsemicolon-before-method-body -Wsentinel -Wshadow -Wsign-compare -Wsometimes-uninitialized -Wstring-conversion -Wsuggest-destructor-override -Wsuggest-override -Wuninitialized -Wunreachable-code -Wunused -Wunused-const-variable -Wunused-parameter -Wunused-result -Wwrite-strings -Wformat-security -Wno-sign-compare -std=gnu++17 -MD -MT tests/libtransmission/CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o -MF CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o.d -o CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o -c /root/small/transmission/tests/libtransmission/watchdir-test.cc]
DEBUG:Compile using parsed arguments:
InputList:         [-DFMT_EXCEPTIONS=0 -DFMT_HEADER_ONLY=1 -DHAVE_GETTEXT -DHAVE_NGETTEXT -DLIBTRANSMISSION_TEST_ASSETS_DIR="/root/small/transmission/tests/libtransmission/assets" -D__TRANSMISSION__ -I/root/small/transmission/libtransmission/.. -I/root/small/transmission/build/libtransmission/.. -isystem /root/small/transmission/cmake/../third-party/fmt/include -isystem /root/small/transmission/third-party/googletest/googletest/include -isystem /root/small/transmission/build/third-party/dht.bld/pfx/include -isystem /root/small/transmission/cmake/../third-party/wide-integer -g -W -Wall -Wextra -Wcast-align -Wexit-time-destructors -Wextra-semi -Wextra-semi-stmt -Wextra-tokens -Wfloat-equal -Wgnu -Winit-self -Wint-in-bool-context -Wmissing-format-attribute -Wnull-dereference -Wpointer-arith -Wredundant-decls -Wredundant-move -Wreorder-ctor -Wreturn-std-move -Wself-assign -Wself-move -Wsemicolon-before-method-body -Wsentinel -Wshadow -Wsign-compare -Wsometimes-uninitialized -Wstring-conversion -Wsuggest-destructor-override -Wsuggest-override -Wuninitialized -Wunreachable-code -Wunused -Wunused-const-variable -Wunused-parameter -Wunused-result -Wwrite-strings -Wformat-security -Wno-sign-compare -std=gnu++17 -MD -MT tests/libtransmission/CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o -MF CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o.d -o CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o -c /root/small/transmission/tests/libtransmission/watchdir-test.cc]
InputFiles:        []
ObjectFiles:       []
OutputFilename:    CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o
CompileArgs:       [-DFMT_EXCEPTIONS=0 -DFMT_HEADER_ONLY=1 -DHAVE_GETTEXT -DHAVE_NGETTEXT -DLIBTRANSMISSION_TEST_ASSETS_DIR="/root/small/transmission/tests/libtransmission/assets" -D__TRANSMISSION__ -I/root/small/transmission/libtransmission/.. -I/root/small/transmission/build/libtransmission/.. -isystem /root/small/transmission/cmake/../third-party/fmt/include -isystem /root/small/transmission/third-party/googletest/googletest/include -isystem /root/small/transmission/build/third-party/dht.bld/pfx/include -isystem /root/small/transmission/cmake/../third-party/wide-integer -g -W -Wall -Wextra -Wcast-align -Wexit-time-destructors -Wextra-semi -Wextra-semi-stmt -Wextra-tokens -Wfloat-equal -Wgnu -Winit-self -Wint-in-bool-context -Wmissing-format-attribute -Wnull-dereference -Wpointer-arith -Wredundant-decls -Wredundant-move -Wreorder-ctor -Wreturn-std-move -Wself-assign -Wself-move -Wsemicolon-before-method-body -Wsentinel -Wshadow -Wsign-compare -Wsometimes-uninitialized -Wstring-conversion -Wsuggest-destructor-override -Wsuggest-override -Wuninitialized -Wunreachable-code -Wunused -Wunused-const-variable -Wunused-parameter -Wunused-result -Wwrite-strings -Wformat-security -Wno-sign-compare -std=gnu++17 -MD -MT tests/libtransmission/CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o -MF CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o.d /root/small/transmission/tests/libtransmission/watchdir-test.cc]
LinkArgs:          []
ForbiddenFlags:    []
IsVerbose:         false
IsDependencyOnly:  true
IsPreprocessOnly:  false
IsAssembleOnly:    false
IsAssembly:        false
IsCompileOnly:     true
IsEmitLLVM:        false
IsLTO:             false
IsPrintOnly:       false

DEBUG: We are skipping bitcode generation because we did not see any input files.
AUDIT:COMPILING /usr/lib/llvm-12/bin/clang++ [-DFMT_EXCEPTIONS=0 -DFMT_HEADER_ONLY=1 -DHAVE_GETTEXT -DHAVE_NGETTEXT -DLIBTRANSMISSION_TEST_ASSETS_DIR="/root/small/transmission/tests/libtransmission/assets" -D__TRANSMISSION__ -I/root/small/transmission/libtransmission/.. -I/root/small/transmission/build/libtransmission/.. -isystem /root/small/transmission/cmake/../third-party/fmt/include -isystem /root/small/transmission/third-party/googletest/googletest/include -isystem /root/small/transmission/build/third-party/dht.bld/pfx/include -isystem /root/small/transmission/cmake/../third-party/wide-integer -g -W -Wall -Wextra -Wcast-align -Wexit-time-destructors -Wextra-semi -Wextra-semi-stmt -Wextra-tokens -Wfloat-equal -Wgnu -Winit-self -Wint-in-bool-context -Wmissing-format-attribute -Wnull-dereference -Wpointer-arith -Wredundant-decls -Wredundant-move -Wreorder-ctor -Wreturn-std-move -Wself-assign -Wself-move -Wsemicolon-before-method-body -Wsentinel -Wshadow -Wsign-compare -Wsometimes-uninitialized -Wstring-conversion -Wsuggest-destructor-override -Wsuggest-override -Wuninitialized -Wunreachable-code -Wunused -Wunused-const-variable -Wunused-parameter -Wunused-result -Wwrite-strings -Wformat-security -Wno-sign-compare -std=gnu++17 -MD -MT tests/libtransmission/CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o -MF CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o.d -o CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o -c /root/small/transmission/tests/libtransmission/watchdir-test.cc]
DEBUG:Calling execCmd(/usr/lib/llvm-12/bin/clang++, [-DFMT_EXCEPTIONS=0 -DFMT_HEADER_ONLY=1 -DHAVE_GETTEXT -DHAVE_NGETTEXT -DLIBTRANSMISSION_TEST_ASSETS_DIR="/root/small/transmission/tests/libtransmission/assets" -D__TRANSMISSION__ -I/root/small/transmission/libtransmission/.. -I/root/small/transmission/build/libtransmission/.. -isystem /root/small/transmission/cmake/../third-party/fmt/include -isystem /root/small/transmission/third-party/googletest/googletest/include -isystem /root/small/transmission/build/third-party/dht.bld/pfx/include -isystem /root/small/transmission/cmake/../third-party/wide-integer -g -W -Wall -Wextra -Wcast-align -Wexit-time-destructors -Wextra-semi -Wextra-semi-stmt -Wextra-tokens -Wfloat-equal -Wgnu -Winit-self -Wint-in-bool-context -Wmissing-format-attribute -Wnull-dereference -Wpointer-arith -Wredundant-decls -Wredundant-move -Wreorder-ctor -Wreturn-std-move -Wself-assign -Wself-move -Wsemicolon-before-method-body -Wsentinel -Wshadow -Wsign-compare -Wsometimes-uninitialized -Wstring-conversion -Wsuggest-destructor-override -Wsuggest-override -Wuninitialized -Wunreachable-code -Wunused -Wunused-const-variable -Wunused-parameter -Wunused-result -Wwrite-strings -Wformat-security -Wno-sign-compare -std=gnu++17 -MD -MT tests/libtransmission/CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o -MF CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o.d -o CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o -c /root/small/transmission/tests/libtransmission/watchdir-test.cc])
DEBUG:execCmd: /usr/lib/llvm-12/bin/clang++ [-DFMT_EXCEPTIONS=0 -DFMT_HEADER_ONLY=1 -DHAVE_GETTEXT -DHAVE_NGETTEXT -DLIBTRANSMISSION_TEST_ASSETS_DIR="/root/small/transmission/tests/libtransmission/assets" -D__TRANSMISSION__ -I/root/small/transmission/libtransmission/.. -I/root/small/transmission/build/libtransmission/.. -isystem /root/small/transmission/cmake/../third-party/fmt/include -isystem /root/small/transmission/third-party/googletest/googletest/include -isystem /root/small/transmission/build/third-party/dht.bld/pfx/include -isystem /root/small/transmission/cmake/../third-party/wide-integer -g -W -Wall -Wextra -Wcast-align -Wexit-time-destructors -Wextra-semi -Wextra-semi-stmt -Wextra-tokens -Wfloat-equal -Wgnu -Winit-self -Wint-in-bool-context -Wmissing-format-attribute -Wnull-dereference -Wpointer-arith -Wredundant-decls -Wredundant-move -Wreorder-ctor -Wreturn-std-move -Wself-assign -Wself-move -Wsemicolon-before-method-body -Wsentinel -Wshadow -Wsign-compare -Wsometimes-uninitialized -Wstring-conversion -Wsuggest-destructor-override -Wsuggest-override -Wuninitialized -Wunreachable-code -Wunused -Wunused-const-variable -Wunused-parameter -Wunused-result -Wwrite-strings -Wformat-security -Wno-sign-compare -std=gnu++17 -MD -MT tests/libtransmission/CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o -MF CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o.d -o CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o -c /root/small/transmission/tests/libtransmission/watchdir-test.cc] had exitCode 0
INFO:Calling [/root/go/bin/gclang++ -DFMT_EXCEPTIONS=0 -DFMT_HEADER_ONLY=1 -DHAVE_GETTEXT -DHAVE_NGETTEXT -DLIBTRANSMISSION_TEST_ASSETS_DIR="/root/small/transmission/tests/libtransmission/assets" -D__TRANSMISSION__ -I/root/small/transmission/libtransmission/.. -I/root/small/transmission/build/libtransmission/.. -isystem /root/small/transmission/cmake/../third-party/fmt/include -isystem /root/small/transmission/third-party/googletest/googletest/include -isystem /root/small/transmission/build/third-party/dht.bld/pfx/include -isystem /root/small/transmission/cmake/../third-party/wide-integer -g -W -Wall -Wextra -Wcast-align -Wexit-time-destructors -Wextra-semi -Wextra-semi-stmt -Wextra-tokens -Wfloat-equal -Wgnu -Winit-self -Wint-in-bool-context -Wmissing-format-attribute -Wnull-dereference -Wpointer-arith -Wredundant-decls -Wredundant-move -Wreorder-ctor -Wreturn-std-move -Wself-assign -Wself-move -Wsemicolon-before-method-body -Wsentinel -Wshadow -Wsign-compare -Wsometimes-uninitialized -Wstring-conversion -Wsuggest-destructor-override -Wsuggest-override -Wuninitialized -Wunreachable-code -Wunused -Wunused-const-variable -Wunused-parameter -Wunused-result -Wwrite-strings -Wformat-security -Wno-sign-compare -std=gnu++17 -MD -MT tests/libtransmission/CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o -MF CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o.d -o CMakeFiles/libtransmission-test.dir/watchdir-test.cc.o -c /root/small/transmission/tests/libtransmission/watchdir-test.cc] returned 0

Do I miss something in the configuration? I think other projects work just fine.

@ianamason
Copy link
Member

Are the object files such as watchdir-test.cc.o object files or bitcode? If they are object files do they contain the bitcode paths?

@ianamason
Copy link
Member

Also look through the logs for the link step.

@ianamason
Copy link
Member

Why is it not recognizing /root/small/transmission/tests/libtransmission/watchdir-test.cc as an input file.

Can you point me to the trasmission source?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants