Problems and Solutions for compiling libfetion under Fedora13

Source: Internet
Author: User
I upgraded to Fedora13 a few days ago. Today I try to install libfetion. I can use China Mobile fetion in inux and download the source code of the latest V1.2 version from the libfetion official website: upgrade (see the http://web.libfetion.org/Docs-dve/Build-LibFx-a few days ago upgraded to Fedora 13, today try to install libfetion, you can use China Mobile fetion in inux, first to libfetion official website to download the latest V1.2 version of the source code,:
Http://web.libfetion.org/Linux_demoapp_download.php
Follow the compilation methods provided by the official website (see http://web.libfetion.org/Docs-dve/Build-LibFx-on-Fedora.txt for details)
1. Install the compiling environment first (under the root user, the same below)
The yum install qt4-devel curl-devel gcc glibc-devel
2. decompress the package
Tar-zxvf linux-fetion-v1.2.tar.gz
3. Enter the decompressed folder.
Cd linux-fetion-v1.2
4. Run the compilation command
Qmake-qt4
Make
5. Run the installation program.
./Install. sh

However, when executing Step 4, the following error occurs after make:
G ++-Wl,-O1-o linux-fetion. tmp/main. o. tmp/fxmain. o. tmp/fxloginwindow. o. tmp/fxmainwindow. o. tmp/fxbuddy. o. tmp/fxbuddyManage. o. tmp/fxmsgwindow. o. tmp/fxaccountTab. o. tmp/fxmytabwidget. o. tmp/fxResource. o. tmp/fxdb. o. tmp/fxcontactinfo. o. tmp/fxaddBuddyWindow. o. tmp/fxqunwindow. o. tmp/fxEncrypt. o. tmp/fxshowHistory. o. tmp/fxverifyAccount. o. tmp/fxInputFace. o. tmp/fxproxy. o. tmp/fxrefuseSMS. o. tmp/fxsendGroupSMS. o. tmp/fxscheduleSms. o. tmp/fxscheduleSmsManage. o. tmp/fxsettings. o. tmp/fxconfigDlg. o. tmp/fxskinmanage. o. tmp/fxwidget. o. tmp/fxwidgettitlebar. o. tmp/qlayoutengine. o. tmp/qwidgetresizehandler. o. tmp/sqlite3.o. tmp/fxlocationparser. o. tmp/moc_fxmain.o. tmp/moc_fxmainwindow.o. tmp/moc_fxloginwindow.o. tmp/moc_fxbuddy.o. tmp/moc_fxbuddyManage.o. tmp/moc_fxmsgwindow.o. tmp/moc_fxaccountTab.o. tmp/moc_fxmytabwidget.o. tmp/moc_fxcontactinfo.o. tmp/moc_fxaddBuddyWindow.o. tmp/moc_fxqunw.w.o. tmp/moc_fxshowHistory.o. tmp/moc_fxverifyAccount.o. tmp/moc_fxInputFace.o. tmp/moc_fxproxy.o. tmp/moc_fxLableMouse.o. tmp/moc_fxLineEditFocus.o. tmp/moc_fxrefuseSMS.o. tmp/moc_fxsendGroupSMS.o. tmp/moc_fxscheduleSms.o. tmp/moc_fxscheduleSmsManage.o. tmp/moc_fxsettings.o. tmp/moc_fxconfigDlg.o. tmp/moc_fxwidget.o. tmp/moc_fxwidgettitlebar.o. tmp/moc_qwidgetresizehandler_p.o. tmp/moc_fxusertree.o. tmp/moc_fxeditablelabel.o. tmp/moc_fxlocationparser.o-lcurl-lssl. /libfetion/lib/libfetion_32.a-lQtXmlPatterns-lQtXml-lQtGui-lQtCore-lpthread
/Usr/bin/ld:. tmp/sqlite3.o: undefined reference to symbol 'dlopen @ GLIBC_2.1'
/Usr/bin/ld: note: 'dlopen @ GLIBC_2.1 'is defined in DSO/lib/libdl. so.2 so try adding it to the linker command line

/Lib/libdl. so.2: cocould not read symbols: Invalid operation
Collect2: ld returns 1
Make: *** [linux-fetion] Error 1

The general meaning is. tmp/sqlite3.o references an unfixed symbol 'dlopen @ GLIBC_2.1 ', 'dlopen @ GLIBC_2.1' In/lib/libdl. as defined in so.2, try/lib/libdl. add so.2 to the connector command

I searched Baidu and google. Someone gave an official fedora address:
Fedoraproject.org/wiki/UnderstandingDSOLinkChange
Let's take a look at it. The general meaning is that this is a bug ora13 bug. If your program needs to reference libA and libB, and libB needs to reference libA, then your program may only connect to libB.
Therefore, the above error indicates that the program needs it. tmp/sqlite3.o, and. tmp/sqlite3.o requires something in/lib/libdl. so the program cannot find/lib/libdl. so.2.
According to official suggestions, add/lib/libdl. so.2 to the-o parameter of gcc. In libfetion, modify the Makefile file, open the Makefile file, and find
LIBS = $ (SUBLIBS)-lcurl-lssl. /libfetion/lib/libfetion_32.a-lQtXmlPatterns-lQtXml-lQtGui-lQtCore-lpthread and add/lib/libdl. so.2 or-ldl:
LIBS = $ (SUBLIBS)-lcurl-lssl./libfetion/lib/libfetion_32.a-lQtXmlPatterns-lQtXml-lQtGui-lQtCore-lpthread-ldl
Or
LIBS = $ (SUBLIBS)-lcurl-lssl./libfetion/lib/libfetion_32.a-lQtXmlPatterns-lQtXml-lQtGui-lQtCore-lpthread/lib/libdl. so.2

Then proceed to Step 4, make succeeded,./install. sh succeeded, www.linuxidc.com finally saw the libfetion icon in the program menu, open the program, enter the mobile phone number and password, and log on successfully!
Related Article

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.