[ https://issues.apache.org/jira/browse/HDFS-16654?focusedWorklogId=789821&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-789821 ]
ASF GitHub Bot logged work on HDFS-16654: ----------------------------------------- Author: ASF GitHub Bot Created on: 12/Jul/22 02:47 Start Date: 12/Jul/22 02:47 Worklog Time Spent: 10m Work Description: iwasakims commented on code in PR #4538: URL: https://github.com/apache/hadoop/pull/4538#discussion_r918499535 ########## hadoop-hdfs-project/hadoop-hdfs-native-client/src/CMakeLists.txt: ########## @@ -127,7 +127,8 @@ if(OPENSSL_LIBRARY AND OPENSSL_INCLUDE_DIR) include(CheckCSourceCompiles) set(OLD_CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES}) set(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR}) - check_c_source_compiles("#include \"${OPENSSL_INCLUDE_DIR}/openssl/evp.h\"\nint main(int argc, char **argv) { return !EVP_aes_256_ctr; }" HAS_NEW_ENOUGH_OPENSSL) Review Comment: Thanks for the explanation. Let me try the patch on Linux env with custom OpenSSL location. Issue Time Tracking ------------------- Worklog Id: (was: 789821) Time Spent: 1h 20m (was: 1h 10m) > Link OpenSSL lib for CMake deps check > ------------------------------------- > > Key: HDFS-16654 > URL: https://issues.apache.org/jira/browse/HDFS-16654 > Project: Hadoop HDFS > Issue Type: Bug > Components: libhdfs++ > Affects Versions: 3.4.0 > Environment: Windows 10 > Reporter: Gautham Banasandra > Assignee: Gautham Banasandra > Priority: Major > Labels: libhdfscpp, pull-request-available > Time Spent: 1h 20m > Remaining Estimate: 0h > > CMake checks whether the required components of OpenSSL are available prior > to building HDFS native client - > https://github.com/apache/hadoop/blob/fac895828f714b5587b57900d588acac69880c1e/hadoop-hdfs-project/hadoop-hdfs-native-client/src/CMakeLists.txt#L130 > {code} > check_c_source_compiles("#include > \"${OPENSSL_INCLUDE_DIR}/openssl/evp.h\"\nint main(int argc, char **argv) { > return !EVP_aes_256_ctr; }" HAS_NEW_ENOUGH_OPENSSL) > {code} > This check compiles but fails while linking on Windows - > {code} > src.obj : error LNK2019: unresolved external symbol EVP_aes_256_ctr > referenced in function main > [H:\hadoop-hdfs-project\hadoop-hdfs-native-client\src\out\build\x64-Debug\CMakeFiles\CMakeTmp\cmTC_e391b.vcxproj] > H:\hadoop-hdfs-project\hadoop-hdfs-native-client\src\out\build\x64-Debug\CMakeFiles\CMakeTmp\Debug\cmTC_e391b.exe > : fatal error LNK1120: 1 unresolved externals > [H:\hadoop-hdfs-project\hadoop-hdfs-native-client\src\out\build\x64-Debug\CMakeFiles\CMakeTmp\cmTC_e391b.vcxproj] > Source file was: > #include <openssl/evp.h> > int main(int argc, char **argv) { return !EVP_aes_256_ctr; } > {code} > Thus, we need to link to the OpenSSL library prior to running this check. > Please note that this check doesn't fail on Linux since CMake is able to pick > it up from the standard location where libs are installed. -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org