C Library on Release 1.14.0
snowzach opened this issue · 3 comments
Hi @lhelontra I am trying to use this to build the C library and am running into compile issues. I am building by just replacing the //tensorflow/tools/pip_package:build_pip_package
with //tensorflow:libtensorflow.so
and I also tried //tensorflow/tools/lib_package:libtensorflow
but it ends up with compile errors like below.
Do you have any hints on how to fix this?
/root/tensorflow-on-arm/build_tensorflow/sources/toolchain/gcc-linaro-6.3.1-2017.05-x86_64_arm-linux-gnueabihf/bin/../arm-linux-gnueabihf/libc/usr/include/stdlib.h:95:1: error: '__BEGIN_NAMESPACE_STD' does not n
ame a type __BEGIN_NAMESPACE_STD
^~~~~~~~~~~~~~~~~~~~~
/root/tensorflow-on-arm/build_tensorflow/sources/toolchain/gcc-linaro-6.3.1-2017.05-x86_64_arm-linux-gnueabihf/bin/../arm-linux-gnueabihf/libc/usr/include/stdlib.h:101:5: error: 'div_t' does not name a type
} div_t; ^~~~~
/root/tensorflow-on-arm/build_tensorflow/sources/toolchain/gcc-linaro-6.3.1-2017.05-x86_64_arm-linux-gnueabihf/bin/../arm-linux-gnueabihf/libc/usr/include/stdlib.h:112:1: error: '__END_NAMESPACE_STD' does not na
me a type
__END_NAMESPACE_STD
^~~~~~~~~~~~~~~~~~~
/root/tensorflow-on-arm/build_tensorflow/sources/toolchain/gcc-linaro-6.3.1-2017.05-x86_64_arm-linux-gnueabihf/bin/../arm-linux-gnueabihf/libc/usr/include/stdlib.h:121:5: error: 'lldiv_t' does not name a type
} lldiv_t;
^~~~~~~
/root/tensorflow-on-arm/build_tensorflow/sources/toolchain/gcc-linaro-6.3.1-2017.05-x86_64_arm-linux-gnueabihf/bin/../arm-linux-gnueabihf/libc/usr/include/stdlib.h:123:1: error: '__END_NAMESPACE_C99' does not na
me a type
__END_NAMESPACE_C99
Hi, verify v1.14.0-buster tag, crosstool should be 5.5.0 not 6.3.1. I recommend your using dockerfile for cross-compile.
Okay, I verified that I was using the right tag now, which I wasn't. This is the other error I've been getting with building boringssl. I wonder if there's a way to not use boringssl.
In file included from external/boringssl/src/ssl/tls13_server.cc:29:0:
external/boringssl/src/include/openssl/digest.h:267:50: error: macro "EVP_MD_CTX_create" passed 1 arguments, but takes just 0
OPENSSL_EXPORT EVP_MD_CTX *EVP_MD_CTX_create(void);
^
In file included from external/boringssl/src/ssl/../crypto/internal.h:112:0,
from external/boringssl/src/ssl/tls13_server.cc:35:
external/boringssl/src/include/openssl/ex_data.h:181:52: error: macro "CRYPTO_cleanup_all_ex_data" passed 1 arguments, but takes just 0
OPENSSL_EXPORT void CRYPTO_cleanup_all_ex_data(void);
^
In file included from external/boringssl/src/ssl/../crypto/internal.h:114:0,
from external/boringssl/src/ssl/tls13_server.cc:35:
external/boringssl/src/include/openssl/thread.h:120:41: error: macro "CRYPTO_num_locks" passed 1 arguments, but takes just 0
OPENSSL_EXPORT int CRYPTO_num_locks(void);
^
external/boringssl/src/include/openssl/thread.h:131:55: error: macro "CRYPTO_get_locking_callback" passed 1 arguments, but takes just 0
OPENSSL_EXPORT void (*CRYPTO_get_locking_callback(void))(int mode, int lock_num,
^
external/boringssl/src/include/openssl/thread.h:176:45: error: macro "CRYPTO_get_dynlock_create_callback" passed 1 arguments, but takes just 0
*CRYPTO_get_dynlock_create_callback(void))(const char *file, int line);
^
external/boringssl/src/include/openssl/thread.h:179:60: error: macro "CRYPTO_get_dynlock_lock_callback" passed 1 arguments, but takes just 0
OPENSSL_EXPORT void (*CRYPTO_get_dynlock_lock_callback(void))(
^
external/boringssl/src/include/openssl/thread.h:183:63: error: macro "CRYPTO_get_dynlock_destroy_callback" passed 1 arguments, but takes just 0
OPENSSL_EXPORT void (*CRYPTO_get_dynlock_destroy_callback(void))(
......
I figured it out now. I had installed a version of libssl-dev:armh and it was conflicting with boringssl apparently. Thanks for the pointers.