Problems compiling LZMA_Alone in Visual C++ 6

Help
2004-09-28
2012-12-07
  • Nobody/Anonymous

    I descompressed LZMA SDK 4.06 and  I got these messages compiling LZMA_Alone in Visual C++ 6.0:

    Linking...
    LZMAEncoder.obj : error LNK2001:
    unresolved external symbol _IID_IMatchFinderSetCallback
    _IID_ICompressWriteCoderProperties
    _IID_ICompressSetCoderProperties
    _IID_ICompressSetOutStream
    _IID_IStreamGetSize
    _IID_IInStream
    _IID_IOutStream
    _IID_ISequentialInStream
    _IID_ISequentialInStream
    _IID_ICompressSetOutStreamSize
    _IID_ICompressSetOutStreamSize
    _IID_ICompressSetInStream
    _IID_ICompressSetInStream
    _IID_ICompressSetDecoderProperties
    _IID_ICompressSetDecoderProperties
    c:\UTIL\lzma.exe : fatal error LNK1120: 11 unresolved externals
    Error executing link.exe.

    Has anyone an idea about these messages?

    Thank you

    Jorge

     
    • Igor Pavlov

      Igor Pavlov - 2004-09-28

      Install latest Platform SDK from microsoft.com

       
    • Lynn Allan

      Lynn Allan - 2004-10-05

      Can you provide some additional specifics? Is there a .lib that needs to be referenced? There are 389 *.lib files in the full sdk.

      I installed the Platform SDK and didn't find any references in the .h or .c*'s to the missing symbols. I'm stumped.

      All I want to do is be able to compress a text file from MyFile.txt to MyFile.lzma and decompress.

       
      • Igor Pavlov

        Igor Pavlov - 2004-10-06

        vc 6.0 has bug (or missing of feature), that was fixed in latest SDKs. So when you install SDK, specify it in derectories in MSVC6, 7-zip can be compiled.

         
    • Lynn Allan

      Lynn Allan - 2004-10-06

      THANKS!
      I had thought it was a .lib problem with the linker, but it was fixed with a placing the [MsPlatformSdkDir]\Include directory "before" [VisStudioC++Dir]\Include directory.

      I didn't have to do anything to the .lib directory specification to get the compile/link to work ok.

      This can be done for all projects by putting MsSdk\Include before in the overall Options. It can be done for an individual project by specifying [MsPlaformSdkDir]\Include in the C++ Preprocessor as "Additional Include Libraries".

      To me, the latter choice seemed appropriate for just the LZMA_Alone project, but perhaps your guidance would be different?

      Thanks again.

       
    • Robert Roessler

      Robert Roessler - 2004-10-06

      Actually, I would suggest the "global" (Options) approach, given that Microsoft expects the Platform SDK to be always "installed" in Visual Studio by setting the SDK's appropriate sub-directories as first in each of the Executable, Include and Library search paths.

      http://msdn.microsoft.com/library/default.asp?url=/library/en-us/stg/stg/using_visual_studio.asp

       

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks