Compile libjingle (Google Talk)

Source: Internet
Author: User
Tags xml parser

 

On the Internet, I saw a lot of friends compiling libjingle (Google Talk). Today I have tried it and compiled it. Based on the following information

Most problems are solved, but some linker errors are not solved,

For example, the shgetspecialfolderpath in the pathutils file, the cryptgenrandom and cryptreleasecontext connection errors in the helpers file, and so on...

The specific connection error is as follows:

 

Fatal error c1189: # error: You must set the voiceengine
Lite expiration date in third_party/gips/expiration. h

 

1> libjingle. Lib (pathutils. OBJ): Error lnk2019: unresolved external
Symbol _ imp _ shgetspecialfolderpathw @ 16 referenced in function "bool _ cdecl
Talk_base: getappdatafolder (class talk_base: pathname &, bool, Class
STD: basic_string <char, struct STD: char_traits <char>, Class
STD: Allocator <char> const &)"(? Getappdatafolder @ talk_base @ ya_naavpathname @ 1 @ _ nabv? $ Basic_string @ du? $ Char_traits @ d @ STD @ V? $ Allocator @ d @ 2 @ STD @ Z)

1> libjingle. Lib (pathutils. OBJ): Error lnk2019: unresolved external symbol
_ Imp _ shfileoperationw @ 4
Referenced in function "bool _ cdecl talk_base: cleanuptemporaryfolder (void )"
(? Cleanuptemporaryfolder @ talk_base @ ya_nxz)

1> libjingle. Lib (helpers1.obj): Error lnk2019: unresolved external symbol
_ Imp _ cryptreleasecontext @ 8 referenced in function "Void _ cdecl
Cricket: initrandom (char const *, unsigned INT )"(? Initrandom @ cricket @ yaxpbdi @ Z)

1> libjingle. Lib (helpers1.obj): Error lnk2019: unresolved external symbol
_ Imp _ cryptgenrandom @ 12 referenced in function "Void _ cdecl
Cricket: initrandom (char const *, unsigned INT )"(? Initrandom @ cricket @ yaxpbdi @ Z)

1> libjingle. Lib (helpers1.obj): Error lnk2019: unresolved external symbol
_ Imp _ cryptacquirecontextw @ 20 referenced in function "Void _ cdecl
Cricket: initrandom (char const *, unsigned INT )"(? Initrandom @ cricket @ yaxpbdi @ Z)

 

Therefore, in addition to the following materials, we should also add the shell32.lib and advapi32.lib references to solve this problem.

(But this problem may occur in vc2005 expres, but not in vc2008)

 

The following are my references:

 

Recently, I want to integrate I'm in my P2P system. According to the survey results, libjingle meets all requirements and is ready to develop its own I'm System Based on libjingle. Step 1, of course, the libjingle program has been compiled, but I have found a circle on the Internet. Either it is not detailed, or it is extremely simple. There is no way to do it. I have to explore it step by step, at the same time, we will sort out the steps on the blog, hoping that later people will not take a detour.

1.
Download the source code of libjingle at https://sourceforge.net/projects/libjingle/. the downloaded version is libjingle-0120012.16.4.0.

2.
Then install visual c ++ 2005 express edition. For more information, see Google.

3.
After visual c ++ 2005 express edition is installed, you must install the Platform SDK. Download it at http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htmand install platform as instructed.
SDK.

4. Download expat XML Parser on sourceforge.net at: http://sourceforge.net/project/downloading.php? Group_id1_101_&use_1_1_nchc&filename=expat_win32bin_2_0_0.exe & 33064126. I downloaded version 2.0.0. After installation, go to visual
C ++ 2005 express edition updates options, tools-> options-> projects and solutions-> VC ++
Directories
Library files: C:/Expat-2.0.0/staticlibs
Include files:
C:/Expat-2.0.0/source/lib
Include files: C:/program files/Microsoft
SDK/include

5. compile the project with the following prompt:
------ Build started: Project:
Libjingle, configuration: Debug Win32
------
Compiling...
Gipslitemediaengine. CC
D:/P2P/XMPP/libjingle/libjingle-0 [1]. 4.0/libjingle-0.4.0/talk/session/phone/gipslitemediaengine. H (33)
: Fatal error c1083: cannot open include file:
''Talk/third_party/gips/interface/gipsvoiceenginelite. h'': no such file or
Directory
Channelmanager. CC
D:/P2P/XMPP/libjingle/libjingle-0 [1]. 4.0/libjingle-0.4.0/talk/session/phone/gipslitemediaengine. H (33)
: Fatal error c1083: cannot open include file:
''Talk/third_party/gips/interface/gipsvoiceenginelite. h'': no such file or
Directory
Winfirewall. CC
D:/P2P/XMPP/libjingle/libjingle-0 [1]. 4.0/libjingle-0.4.0/talk/base/winfirewall. CC (29)
: Fatal error c1083: cannot open include file: ''netfw. h'': no such file or
Directory
Generating code...
Build log was saved at "file: // D:/P2P/XMPP/libjingle/libjingle-0 [1]. 4.0/libjingle-0.4.0/talk/debug/buildlog.htm"
Libjingle
-3 error (s), 0 warning (s)
6.
The previous two compilation errors can be completed by downloading the gipsvoiceenginelite package. However, gipsvoiceenginelite requires a license to download the package. Because the project does not require the voice function for the time being, so the session/phone sub-project is removed from the project, and the first two compilation errors disappear.

7.
In.

8.
Recompile, libjingle-0 error (s), 0 warning (s)
=========== Build: 1 succeeded, 0
Failed, 0 up-to-date, 0 skipped ========== success, libjingle compiled successfully.

Article Source: http://www.diybl.com/course/3_program/c++/cppsl/200832/102420.html

 

 

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.