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

Compile Error in v2.1.0-RC4 in Ubuntu 20.04 #623

Closed
Smityz opened this issue Oct 19, 2020 · 5 comments
Closed

Compile Error in v2.1.0-RC4 in Ubuntu 20.04 #623

Smityz opened this issue Oct 19, 2020 · 5 comments
Labels
type/bug This issue reports a bug.

Comments

@Smityz
Copy link
Contributor

Smityz commented Oct 19, 2020

Bug Report

pegasus version

Pegasus Server v2.1.0-RC4

build error info

[18%] Built target pegasus.rproxylib
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/DSN_ROOT/lib/libdsn_runtime.a(kinit_context.cpp.o): in function `dsn::security::kinit_context::krb5_call_to_errors(int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
/home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/kinit_context.cpp:301: undefined reference to `krb5_get_error_message'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/kinit_context.cpp:303: undefined reference to `krb5_free_error_message'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/DSN_ROOT/lib/libdsn_runtime.a(kinit_context.cpp.o): in function `dsn::security::kinit_context::~kinit_context()':
/home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/kinit_context.cpp:121: undefined reference to `krb5_get_init_creds_opt_free'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/DSN_ROOT/lib/libdsn_runtime.a(kinit_context.cpp.o): in function `std::call_once<dsn::security::kinit_context::init_krb5_ctx()::{lambda()#1}>(std::once_flag&, dsn::security::kinit_context::init_krb5_ctx()::{lambda()#1}&&)::{lambda()#2}::_FUN()':
/home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/kinit_context.cpp:167: undefined reference to `krb5_init_context'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/DSN_ROOT/lib/libdsn_runtime.a(kinit_context.cpp.o): in function `dsn::security::kinit_context::parse_username_from_principal()':
/home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/kinit_context.cpp:177: undefined reference to `krb5_aname_to_localname'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/DSN_ROOT/lib/libdsn_runtime.a(kinit_context.cpp.o): in function `dsn::security::kinit_context::get_credentials()':
/home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/kinit_context.cpp:219: undefined reference to `krb5_get_init_creds_keytab'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/kinit_context.cpp:236: undefined reference to `krb5_cc_store_cred'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/kinit_context.cpp:233: undefined reference to `krb5_free_cred_contents'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/kinit_context.cpp:233: undefined reference to `krb5_free_cred_contents'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/DSN_ROOT/lib/libdsn_runtime.a(kinit_context.cpp.o): in function `dsn::security::kinit_context::kinit()':
/home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/kinit_context.cpp:134: undefined reference to `krb5_parse_name'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/kinit_context.cpp:141: undefined reference to `krb5_kt_resolve'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/kinit_context.cpp:145: undefined reference to `krb5_cc_default'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/kinit_context.cpp:149: undefined reference to `krb5_cc_initialize'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/kinit_context.cpp:153: undefined reference to `krb5_get_init_creds_opt_alloc'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/DSN_ROOT/lib/libdsn_runtime.a(sasl_init.cpp.o): in function `dsn::security::init_sasl(bool)':
/home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/sasl_init.cpp:132: undefined reference to `sasl_client_init'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/sasl_init.cpp:141: undefined reference to `sasl_server_init'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/sasl_init.cpp:145: undefined reference to `sasl_errstring'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/sasl_init.cpp:137: undefined reference to `sasl_errstring'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/DSN_ROOT/lib/libdsn_runtime.a(sasl_init.cpp.o): in function `dsn::security::sasl_set_mutex_local()':
/home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/sasl_init.cpp:121: undefined reference to `sasl_set_mutex'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/DSN_ROOT/lib/libdsn_runtime.a(sasl_wrapper.cpp.o): in function `dsn::security::sasl_err_desc(int, sasl_conn*)':
/home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/sasl_wrapper.cpp:29: undefined reference to `sasl_errdetail'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/sasl_wrapper.cpp:31: undefined reference to `sasl_errstring'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/DSN_ROOT/lib/libdsn_runtime.a(sasl_wrapper.cpp.o): in function `dsn::security::sasl_wrapper::~sasl_wrapper()':
/home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/sasl_wrapper.cpp:38: undefined reference to `sasl_dispose'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/DSN_ROOT/lib/libdsn_runtime.a(sasl_client_wrapper.cpp.o): in function `dsn::security::sasl_client_wrapper::start(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, dsn::blob const&, dsn::blob&)':
/home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/sasl_client_wrapper.cpp:52: undefined reference to `sasl_client_start'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/DSN_ROOT/lib/libdsn_runtime.a(sasl_client_wrapper.cpp.o): in function `dsn::security::sasl_client_wrapper::init()':
/home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/sasl_client_wrapper.cpp:37: undefined reference to `sasl_client_new'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/DSN_ROOT/lib/libdsn_runtime.a(sasl_client_wrapper.cpp.o): in function `dsn::security::sasl_client_wrapper::step(dsn::blob const&, dsn::blob&)':
/home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/sasl_client_wrapper.cpp:67: undefined reference to `sasl_client_step'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/DSN_ROOT/lib/libdsn_runtime.a(sasl_server_wrapper.cpp.o): in function `dsn::security::sasl_server_wrapper::start(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, dsn::blob const&, dsn::blob&)':
/home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/sasl_server_wrapper.cpp:51: undefined reference to `sasl_server_start'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/DSN_ROOT/lib/libdsn_runtime.a(sasl_server_wrapper.cpp.o): in function `dsn::security::sasl_server_wrapper::init()':
/home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/sasl_server_wrapper.cpp:37: undefined reference to `sasl_server_new'
/usr/bin/ld: /home/smilencer/Code/incubator-pegasus/DSN_ROOT/lib/libdsn_runtime.a(sasl_server_wrapper.cpp.o): in function `dsn::security::sasl_server_wrapper::step(dsn::blob const&, dsn::blob&)':
/home/smilencer/Code/incubator-pegasus/rdsn/src/runtime/security/sasl_server_wrapper.cpp:66: undefined reference to `sasl_server_step'
collect2: error: ld returned 1 exit status
make[2]: *** [base/test/CMakeFiles/base_test.dir/build.make:112: base/test/base_test] Error 1
make[1]: *** [CMakeFiles/Makefile2:544: base/test/CMakeFiles/base_test.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 18%] Built target combine_lib
[ 18%] Built target pegasus_client_shared
make: *** [Makefile:130: all] Error 2
ERROR: build pegasus failed
ERROR: build pegasus failed

Simple analysis

I think the document of v2.1.0-RC4 needs to be updated to add the necessary dependency.

@Smityz Smityz added the type/bug This issue reports a bug. label Oct 19, 2020
@acelyc111
Copy link
Member

Now code and docs are in different github repos separately, we can update docs later.

@Smityz
Copy link
Contributor Author

Smityz commented Oct 21, 2020

One way to solve that is to delete rdsn/thirdparty/output and rdsn/thirdparty/build and recompile it

@acelyc111
Copy link
Member

One way to solve that is to delete rdsn/thirdparty/output and rdsn/thirdparty/build and recompile it

Of course, I think there is no problem of the source code, but the docs are out of date.

@acelyc111
Copy link
Member

@Smityz Could you plz to update the docs?

@Smityz
Copy link
Contributor Author

Smityz commented Oct 22, 2020

There is no need to update docs, because the corresponding dependence will be installed for the first time you compile pegasus

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type/bug This issue reports a bug.
Projects
None yet
Development

No branches or pull requests

2 participants