Closed zjd87 closed 3 years ago
I try add compile option -m32, but occur another error.
ld.lld: error: cannot open crti.o
ld.lld: error: cannot open crtn.o
....compile many issue in centos7 ...um....
@dmitri-d could someone at Red Hat comment on this? Thanks.
The first bunch of issues are due to linker trying to use 64bit dependencies to build a 32bit binary. Is this a 32bit system? Not sure if 32bit devtoolset-8 even exist. If this is a cross-compile to a 32bit target, -m32 is on the right path (haven't tried building 32bit binaries myself).
the version of zlib which i use is zlib.x86_64 1.2.7-18.el7 But when I change zlib version that i use to zlib.i686 1.2.7-18.el7, it's still the same error
Unless envoy build has been changed to use locally available zlib, these won't be used: envoy build downloads and builds its zlib depedency.
ld.lld: error: cannot open crti.o
I think systemd-libs
is missing.
Any reason devtoolset-8 is used? Envoy gcc builds (and downstream Maistra) are based on devtoolset-9, which is bound to have fewer issues...
@dmitri-d use devtoolset-9 , some new issues...
INFO: Build option --copt has changed, discarding analysis cache. INFO: Analyzed target //source/exe:envoy-static (0 packages loaded, 38789 targets configured). INFO: Found 1 target... ERROR: /home/envoy/source/extensions/common/crypto/BUILD:11:19: undeclared inclusion(s) in rule '//source/extensions/common/crypto:utility_lib': this rule is missing dependency declarations for the following files included by 'source/extensions/common/crypto/crypto_impl.cc': '/opt/rh/devtoolset-9/root/usr/include/c++/9/memory' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/stl_algobase.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/x86_64-redhat-linux/bits/c++config.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/x86_64-redhat-linux/bits/os_defines.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/x86_64-redhat-linux/bits/cpu_defines.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/pstl/pstl_config.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/functexcept.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/exception_defines.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/cpp_type_traits.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/ext/type_traits.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/ext/numeric_traits.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/stl_pair.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/move.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/concept_check.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/type_traits' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/stl_iterator_base_types.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/stl_iterator_base_funcs.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/debug/assertions.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/stl_iterator.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/ptr_traits.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/debug/debug.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/predefined_ops.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/allocator.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/x86_64-redhat-linux/bits/c++allocator.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/ext/new_allocator.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/new' '/opt/rh/devtoolset-9/root/usr/include/c++/9/exception' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/exception.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/exception_ptr.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/cxxabi_init_exception.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/typeinfo' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/hash_bytes.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/nested_exception.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/memoryfwd.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/stl_construct.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/ext/alloc_traits.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/alloc_traits.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/stl_uninitialized.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/utility' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/stl_relops.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/initializer_list' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/stl_tempbuf.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/stl_raw_storage_iter.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/iosfwd' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/stringfwd.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/postypes.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/cwchar' '/opt/rh/devtoolset-9/root/usr/include/c++/9/ext/atomicity.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/x86_64-redhat-linux/bits/gthr.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/x86_64-redhat-linux/bits/gthr-default.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/x86_64-redhat-linux/bits/atomic_word.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/ext/concurrence.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/stl_function.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/backward/binders.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/uses_allocator.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/unique_ptr.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/tuple' '/opt/rh/devtoolset-9/root/usr/include/c++/9/array' '/opt/rh/devtoolset-9/root/usr/include/c++/9/stdexcept' '/opt/rh/devtoolset-9/root/usr/include/c++/9/string' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/char_traits.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/cstdint' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/localefwd.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/x86_64-redhat-linux/bits/c++locale.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/clocale' '/opt/rh/devtoolset-9/root/usr/include/c++/9/cctype' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/ostream_insert.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/cxxabi_forced.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/range_access.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/basic_string.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/string_view' '/opt/rh/devtoolset-9/root/usr/include/c++/9/limits' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/functional_hash.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/string_view.tcc' '/opt/rh/devtoolset-9/root/usr/include/c++/9/ext/string_conversions.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/cstdlib' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/std_abs.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/cstdio' '/opt/rh/devtoolset-9/root/usr/include/c++/9/cerrno' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/basic_string.tcc' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/invoke.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/shared_ptr.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/shared_ptr_base.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/allocated_ptr.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/refwrap.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/ext/aligned_buffer.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/shared_ptr_atomic.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/atomic_base.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/bits/atomic_lockfree_defines.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/backward/auto_ptr.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/pstl/glue_memory_defs.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/pstl/execution_defs.h' Target //source/exe:envoy-static failed to build
INFO: Analyzed target //source/exe:envoy-static (0 packages loaded, 0 targets configured). INFO: Found 1 target... ERROR: /root/.cache/bazel/_bazel_root/6828f19b3e1129fed5024145c6ebe69b/external/com_google_absl/absl/strings/BUILD.bazel:83:11: undeclared inclusion(s) in rule '@com_google_absl//absl/strings:internal': this rule is missing dependency declarations for the following files included by 'external/com_google_absl/absl/strings/internal/utf8.cc': '/opt/rh/devtoolset-9/root/usr/include/c++/9/cstddef' '/opt/rh/devtoolset-9/root/usr/include/c++/9/x86_64-redhat-linux/bits/c++config.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/x86_64-redhat-linux/bits/os_defines.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/x86_64-redhat-linux/bits/cpu_defines.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/pstl/pstl_config.h' '/opt/rh/devtoolset-9/root/usr/include/c++/9/cstdint' '/opt/rh/devtoolset-9/root/usr/include/c++/9/ciso646' '/opt/rh/devtoolset-9/root/usr/include/c++/9/any' '/opt/rh/devtoolset-9/root/usr/include/c++/9/optional' '/opt/rh/devtoolset-9/root/usr/include/c++/9/variant' '/opt/rh/devtoolset-9/root/usr/include/c++/9/string_view' Target //source/exe:envoy-static failed to build
Looks like bazel found system header files are in the wrong dir. Did you enable the devtoolset software collection via scl enable devtoolset-9 'bash'
? Note this has to be done every time the bash session from the command above is closed.
@dmitri-d I source /opt/rh/devtoolset-9/enable which is similar to scl enble devtoolset-9 'bash' every time when i login new session bash. Another question, I use ubuntu , and build success; when --concurrency 3 start , the result is one master thread(envoy-static) and twelve child threads(default-executo/resolver-execut/grpc_global_tim/GrpcGoogClient/dog:main_thread/dog:workers_gua/wrk:worker_0/wrk:worker_1/wrk:worker_2/GrpcGoogClient/GrpcGoogClient/GrpcGoogClient); so work thread is wrk:worker_x ? And as long as add a new work thread, a new GrpcGoogClient thread will be added ?
I source /opt/rh/devtoolset-9/enable which is similar to scl enble devtoolset-9 'bash' every time when i login new session bash.
Have you run bazel clean --expunge
after installing and enabling devtoolset-9? The issue (as I see it) is that bazel doesn't recognise header files in devtoolset-9 as system ones, bazel clean
should clear existing build configuration (including header file paths) and re-create it. It's possible to manually specify system header files location via https://docs.bazel.build/versions/master/skylark/lib/cc_common.html#create_cc_toolchain_config_info (via cxx_builtin_include_directories option), but that shouldn't be necessary.
when --concurrency 3 start , the result is one master thread(envoy-static) and twelve child threads(default-executo/resolver-execut/grpc_global_tim/GrpcGoogClient/dog:main_thread/dog:workers_gua/wrk:worker_0/wrk:worker_1/wrk:worker_2/GrpcGoogClient/GrpcGoogClient/GrpcGoogClient); so work thread is wrk:worker_x ? And as long as add a new work thread, a new GrpcGoogClient thread will be added ?
GrpcGoogClient
is a grpc async client, not sure what the limit for these is (if there's any). The number of workers (event loops) is equal to the value in concurrency
option though (https://github.com/envoyproxy/envoy/blob/master/source/server/listener_manager_impl.cc#L262).
occur new err after bazel clean --expunge clang++ -MMD -MF obj/torque_generated_initializers/regexp-exec-tq-csa.o.d -DUSE_UDEV -DUSE_AURA=1 -DUSE_NSS_CERTS=1 -DUSE_X11=1 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -DCR_CLANG_REVISION=\"\" -DSTDC_CONSTANT_MACROS -DSTDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DV8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=64 -DENABLE_MINOR_MC -DV8_CONCURRENT_MARKING -DV8_ARRAY_BUFFER_EXTENSION -DV8_ENABLE_LAZY_SOURCE_POSITIONS -DV8_WIN64_UNWINDING_INFO -DV8_ENABLE_REGEXP_INTERPRETER_THREADED_DISPATCH -DV8_SNAPSHOT_COMPRESSION -DV8_COMPRESS_POINTERS -DV8_31BIT_SMIS_ON_64BIT_ARCH -DV8_DEPRECATION_WARNINGS -DV8_IMMINENT_DEPRECATION_WARNINGS -DV8_TARGET_ARCH_X64 -DV8_HAVE_TARGET_OS -DV8_TARGET_OS_LINUX -DDISABLE_UNTRUSTED_CODE_MITIGATIONS -DV8_COMPRESS_POINTERS -DV8_31BIT_SMIS_ON_64BIT_ARCH -DV8_DEPRECATION_WARNINGS -DV8_IMMINENT_DEPRECATION_WARNINGS -I../.. -Igen -I../.. -I../../include -Igen -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -funwind-tables -fPIC -pthread -fcolor-diagnostics -fmerge-all-constants -m64 -march=x86-64 -Wno-builtin-macro-redefined -DDATE= -DTIME= -DTIMESTAMP= -Xclang -fdebug-compilation-dir -Xclang . -no-canonical-prefixes -Wall -Werror -Wextra -Wimplicit-fallthrough -Wunreachable-code -Wthread-safety -Wextra-semi -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-unneeded-internal-declaration -Wno-undefined-var-template -fno-omit-frame-pointer -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wmissing-field-initializers -Wunreachable-code -Wshorten-64-to-32 -O3 -fno-ident -fdata-sections -ffunction-sections -g1 -fvisibility=default -Wexit-time-destructors -std=c++14 -fno-trigraphs -Wno-trigraphs -fno-exceptions -fno-rtti -Wno-sign-compare -Wno-deprecated-copy -Wno-unknown-warning-option -Wno-implicit-int-float-conversion -Wno-builtin-assume-aligned-alignment -Wno-final-dtor-non-final-class -c gen/torque-generated/src/builtins/regexp-exec-tq-csa.cc -o obj/torque_generated_initializers/regexp-exec-tq-csa.o In file included from gen/torque-generated/src/builtins/regexp-exec-tq-csa.cc:1: In file included from ../../src/builtins/builtins-array-gen.h:8: In file included from ../../src/codegen/code-stub-assembler.h:10: ../../src/base/macros.h:332:12: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32] return x & -m;
../../src/heap/spaces.h:157:14: note: in instantiation of function template specialization 'RoundDown<int>' requested here
return RoundDown(size, kCodeAlignment);
^
1 error generated.
[266/975] CXX obj/torque_generated_initializers/promise-resolve-tq-csa.o
FAILED: obj/torque_generated_initializers/promise-resolve-tq-csa.o
clang++ -MMD -MF obj/torque_generated_initializers/promise-resolve-tq-csa.o.d -DUSE_UDEV -DUSE_AURA=1 -DUSE_NSS_CERTS=1 -DUSE_X11=1 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -DCR_CLANG_REVISION=\"\" -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DV8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=64 -DENABLE_MINOR_MC -DV8_CONCURRENT_MARKING -DV8_ARRAY_BUFFER_EXTENSION -DV8_ENABLE_LAZY_SOURCE_POSITIONS -DV8_WIN64_UNWINDING_INFO -DV8_ENABLE_REGEXP_INTERPRETER_THREADED_DISPATCH -DV8_SNAPSHOT_COMPRESSION -DV8_COMPRESS_POINTERS -DV8_31BIT_SMIS_ON_64BIT_ARCH -DV8_DEPRECATION_WARNINGS -DV8_IMMINENT_DEPRECATION_WARNINGS -DV8_TARGET_ARCH_X64 -DV8_HAVE_TARGET_OS -DV8_TARGET_OS_LINUX -DDISABLE_UNTRUSTED_CODE_MITIGATIONS -DV8_COMPRESS_POINTERS -DV8_31BIT_SMIS_ON_64BIT_ARCH -DV8_DEPRECATION_WARNINGS -DV8_IMMINENT_DEPRECATION_WARNINGS -I../.. -Igen -I../.. -I../../include -Igen -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -funwind-tables -fPIC -pthread -fcolor-diagnostics -fmerge-all-constants -m64 -march=x86-64 -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -Xclang -fdebug-compilation-dir -Xclang . -no-canonical-prefixes -Wall -Werror -Wextra -Wimplicit-fallthrough -Wunreachable-code -Wthread-safety -Wextra-semi -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-unneeded-internal-declaration -Wno-undefined-var-template -fno-omit-frame-pointer -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wmissing-field-initializers -Wunreachable-code -Wshorten-64-to-32 -O3 -fno-ident -fdata-sections -ffunction-sections -g1 -fvisibility=default -Wexit-time-destructors -std=c++14 -fno-trigraphs -Wno-trigraphs -fno-exceptions -fno-rtti -Wno-sign-compare -Wno-deprecated-copy -Wno-unknown-warning-option -Wno-implicit-int-float-conversion -Wno-builtin-assume-aligned-alignment -Wno-final-dtor-non-final-class -c gen/torque-generated/src/builtins/promise-resolve-tq-csa.cc -o obj/torque_generated_initializers/promise-resolve-tq-csa.o
In file included from gen/torque-generated/src/builtins/promise-resolve-tq-csa.cc:1:
In file included from ../../src/builtins/builtins-array-gen.h:8:
In file included from ../../src/codegen/code-stub-assembler.h:10:
../../src/base/macros.h:332:12: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
return x & -m;
~~~~~~ ~~^~~~
../../src/heap/spaces.h:157:14: note: in instantiation of function template specialization 'RoundDown<int>' requested here
return RoundDown(size, kCodeAlignment);
^
1 error generated.
ninja: build stopped: subcommand failed.
Target //source/exe:envoy-static failed to build
it maybe chrome v8's error?
@dmitri-d i try to use -Wno-shorten-64-to-32 to complier, but this mistake remains appear.
Hmm, I'm not even sure what dependency raises this error; without looking at the code -- it may or may not be an actual issue, it depends on the possible range of values for size
. Probably worth checking with the dependecy project itself.
@dmitri-d https://github.com/v8/v8/blob/dc712da548c7fb433caed56af9a021d964952728/src/base/macros.h#L339 github v8 should fix this err, you maybe try to depend last version.
This issue has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in the next 7 days unless it is tagged "help wanted" or "no stalebot" or other activity occurs. Thank you for your contributions.
This issue has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in the next 7 days unless it is tagged "help wanted" or "no stalebot" or other activity occurs. Thank you for your contributions.
This issue has been automatically closed because it has not had activity in the last 37 days. If this issue is still valid, please ping a maintainer and ask them to label it as "help wanted" or "no stalebot". Thank you for your contributions.
ld.lld: error: /lib/../lib64/crti.o is incompatible with elf32-i386 ld.lld: error: /opt/rh/devtoolset-8/root/usr/lib/gcc/x86_64-redhat-linux/8/crtbeginS.o is incompatible with elf32-i386 ld.lld: error: /lib/../lib64/libm.so is incompatible with elf32-i386 ld.lld: error: CMakeFiles/zlib.dir/adler32.o is incompatible with elf32-i386 ld.lld: error: CMakeFiles/zlib.dir/compress.o is incompatible with elf32-i386 ld.lld: error: CMakeFiles/zlib.dir/crc32.o is incompatible with elf32-i386 ld.lld: error: CMakeFiles/zlib.dir/deflate.o is incompatible with elf32-i386 ld.lld: error: CMakeFiles/zlib.dir/gzclose.o is incompatible with elf32-i386 ld.lld: error: CMakeFiles/zlib.dir/gzlib.o is incompatible with elf32-i386 ld.lld: error: CMakeFiles/zlib.dir/gzread.o is incompatible with elf32-i386 ld.lld: error: CMakeFiles/zlib.dir/gzwrite.o is incompatible with elf32-i386 ld.lld: error: CMakeFiles/zlib.dir/inflate.o is incompatible with elf32-i386 ld.lld: error: CMakeFiles/zlib.dir/infback.o is incompatible with elf32-i386 ld.lld: error: CMakeFiles/zlib.dir/inftrees.o is incompatible with elf32-i386 ld.lld: error: CMakeFiles/zlib.dir/inffast.o is incompatible with elf32-i386 ld.lld: error: CMakeFiles/zlib.dir/trees.o is incompatible with elf32-i386 ld.lld: error: CMakeFiles/zlib.dir/uncompr.o is incompatible with elf32-i386 ld.lld: error: CMakeFiles/zlib.dir/zutil.o is incompatible with elf32-i386 ld.lld: error: /lib64/libc.so.6 is incompatible with elf32-i386 ld.lld: error: /lib64/ld-linux-x86-64.so.2 is incompatible with elf32-i386 ld.lld: error: too many errors emitted, stopping now (use -error-limit=0 to see all errors) clang: error: linker command failed with exit code 1 (use -v to see invocation)
my system is centos7 the version of zlib which i use is zlib.x86_64 1.2.7-18.el7 But when I change zlib version that i use to zlib.i686 1.2.7-18.el7, it's still the same error