hi all,
I am following the blog post -
http://blogs.msdn.com/b/carlnol/archive/2012/02/29/hadoop-net-hdfs-file-access.aspx
I copied the .NET solution from the Hadoop cluster machine to my local machine and build. Managed Test project showed error as <hdfs.h> could not found or loaded. Therefore in WinHdfsManaged project - properties - c/c++ -General - Additional Include
Libraries; I have set path to Native project -C:\kunal\Learning\Research\Hadoop\tools\WinLibHdfs\src\x64\Debug;C:\kunal\Learning\Research\Hadoop\tools\WinLibHdfs\src\WinHdfsNative
These are my local machine paths. Bold are the paths of directories took from Hadoop cluster machine. Then I got linker error as WinHdfs.lib can not be linked. I thought name should be WinHdfsNative.lib.
Therefore WinHdfsManaged project - properties - Linker-General - Additional Directory Libraries; I have added bold paths as C:\kunal\Learning\Research\Hadoop\tools\WinLibHdfs\src\WinHdfsNative\lib;C:\kunal\Learning\Research\Hadoop\tools\WinLibHdfs\src\x64\Debug;%(AdditionalLibraryDirectories)
Also WinHdfsManaged project - properties - Linker - Input - Additional Dependcies;
I have renamed winhdfs.lib to winhdfsnative.lib. Then added reference of WinHdfsManaged project in WinHdfsManagedTest project by using Add reference option;
Then project was successfully compiled and EXE was generated. I copied the EXE to hadoop cluster machine. Then opened Computer-Properties-EnvironmentVariables -User variables; modified Path and CLASSPATH variable to values mentioned in the blog post at the
bottom section. Please note that, I am not admin on Hadoop machine therefore not able to modify Path and CLASSPATH system environment variables.
Still I receive WinHdfrsManaged.dll not found exception. I have never worked on Interoperability and Java. I may be wrong somewhere.
Any help is appreciated!!
Thanks!!
Mark As Answer if it helps you |
My Blog