Created attachment 1829475 [details] Example source code + Makefile Description of problem: The package xmlrpc-c-devel-1.51 that is shipped with Fedora 35 has missing C++ symbols that prevent compiling C++ clients. It affects also Fedora 34 and EPEL-8. How reproducible: It happens every time Steps to Reproduce: 1. Install Fedora Server 35 in a virtual machine 2. Install some packages: dnf install xmlrpc-c-devel g++ make 3. Compile the basic c++ client example from the xmlrpc-c web site https://sourceforge.net/p/xmlrpc-c/code/HEAD/tree/trunk/examples/cpp/xmlrpc_sample_add_client.cpp For convenience, the needed Makefile and .cpp file are attached to the bug report tar xvf test_client_xmlrpc.tar.gz cd test_client_xmlrpc make /usr/bin/xmlrpc-c-config version 1.51.0 rm -f a.out g++ test_client_xmlrpc.cpp -lxmlrpc_client++ /usr/bin/ld: /tmp/ccXzKiXh.o: undefined reference to symbol '_ZNK8xmlrpc_c9value_intcviEv' /usr/bin/ld: /usr/lib64/libxmlrpc++.so.8: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status make: *** [Makefile:10: all] Error 1 Actual results: The example does not compile. Expected results: It should compile without errors like on CentOS7 (which has an older package version). Additional info: If I build the src.rpm without the RPM patches, the bug disappears 1. Install prerequesites dnf install g++ make openssl-devel libcurl-devel 2. Download and install xmlrpc-c .src.rpm wget https://kojipkgs.fedoraproject.org//packages/xmlrpc-c/1.51.0/14.fc36/src/xmlrpc-c-1.51.0-14.fc36.src.rpm rpm -i xmlrpc-c-1.51.0-14.fc36.src.rpm 3. Extract the source code, build and install it tar xf rpmbuild/SOURCES/xmlrpc-c-1.51.0.tar.xz cd xmlrpc-c-1.51.0/ ./configure make make install 4. Then try again to build the example This time the Makefile will pick xmlrpc-c-config from /usr/local/bin and then the libraries in /usr/local/lib cd ~/test_client_xmlrpc make /usr/local/bin/xmlrpc-c-config version 1.51.0 rm -f a.out g++ -I/usr/local/include test_client_xmlrpc.cpp -L/usr/local/lib -lxmlrpc_client++ -lxmlrpc_client -lxmlrpc++ -lxmlrpc_util++ -lxmlrpc -lxmlrpc_xmlparse -lxmlrpc_xmltok -lxmlrpc_util -lpthread -lcurl -lxmlrpc_packetsocket When the RPM patches are not applied, there is no compilation errors and the example program works as expected.
This message is a reminder that Fedora Linux 35 is nearing its end of life. Fedora will stop maintaining and issuing updates for Fedora Linux 35 on 2022-12-13. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as EOL if it remains open with a 'version' of '35'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, change the 'version' to a later Fedora Linux version. Thank you for reporting this issue and we are sorry that we were not able to fix it before Fedora Linux 35 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora Linux, you are encouraged to change the 'version' to a later version prior to this bug being closed.
Unfortunately, the bug is still present on Fedora 37. Install Fedora Server 37, with default settings in VirtualBox dnf install g++ make xmlrpc-c-devel wget https://bugzilla.redhat.com/attachment.cgi?id=1829475 -O test_client_xmlrpc.tar.gz tar xvf test_client_xmlrpc.tar.gz cd test_client_xmlrpc make Result /usr/bin/xmlrpc-c-config version 1.51.0 rm -f a.out g++ test_client_xmlrpc.cpp -lxmlrpc_client++ /usr/bin/ld: /tmp/ccJSg2rp.o: undefined reference to symbol '_ZNK8xmlrpc_c9value_intcviEv' /usr/bin/ld: /usr/lib64/libxmlrpc++.so.8: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status make: *** [Makefile:11: all] Error 1
Sebastien, Can you give the builds from https://koji.fedoraproject.org/koji/taskinfo?taskID=95038453 a shot? Based on your test case provided it resolves the issue, but there are significant changes in the way the package is built in my test build so if you could just check general functionality of the package that would be great.
Hi, I confirm that the test program builds without errors with the packages from https://koji.fedoraproject.org/koji/taskinfo?taskID=95038453 Procedure: ---------------- Install Fedora Server 37, with default settings in VirtualBox dnf install g++ make curl-devel wget https://kojipkgs.fedoraproject.org//work/tasks/8472/95038472/xmlrpc-c-devel-1.51.08-1.fc37.x86_64.rpm https://kojipkgs.fedoraproject.org//work/tasks/8472/95038472/xmlrpc-c-c%2B%2B-1.51.08-1.fc37.x86_64.rpm https://kojipkgs.fedoraproject.org//work/tasks/8472/95038472/xmlrpc-c-client-1.51.08-1.fc37.x86_64.rpm https://kojipkgs.fedoraproject.org//work/tasks/8472/95038472/xmlrpc-c-client%2B%2B-1.51.08-1.fc37.x86_64.rpm https://kojipkgs.fedoraproject.org//work/tasks/8472/95038472/xmlrpc-c-1.51.08-1.fc37.x86_64.rpm rpm -Uvh xmlrpc-c-devel-1.51.08-1.fc37.x86_64.rpm xmlrpc-c-c++-1.51.08-1.fc37.x86_64.rpm xmlrpc-c-client-1.51.08-1.fc37.x86_64.rpm xmlrpc-c-client++-1.51.08-1.fc37.x86_64.rpm xmlrpc-c-1.51.08-1.fc37.x86_64.rpm wget https://bugzilla.redhat.com/attachment.cgi?id=1829475 -O test_client_xmlrpc.tar.gz tar xvf test_client_xmlrpc.tar.gz cd test_client_xmlrpc make ---------------- Checking general functionality ------------------------------- I have built an other program, much more complex, and it seems to work normally. So at a first sight, I would say that the general functionalities work as expected.
FEDORA-2022-692c5bed30 has been submitted as an update to Fedora 37. https://bodhi.fedoraproject.org/updates/FEDORA-2022-692c5bed30
FEDORA-2022-1cd3550b91 has been submitted as an update to Fedora 36. https://bodhi.fedoraproject.org/updates/FEDORA-2022-1cd3550b91
FEDORA-2022-908778bf50 has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2022-908778bf50
FEDORA-2022-1cd3550b91 has been pushed to the Fedora 36 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-1cd3550b91` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-1cd3550b91 See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
FEDORA-2022-692c5bed30 has been pushed to the Fedora 37 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-692c5bed30` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-692c5bed30 See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
FEDORA-2022-908778bf50 has been pushed to the Fedora 35 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-908778bf50` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-908778bf50 See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
FEDORA-2022-692c5bed30 has been pushed to the Fedora 37 stable repository. If problem still persists, please make note of it in this bug report.
FEDORA-2022-1cd3550b91 has been pushed to the Fedora 36 stable repository. If problem still persists, please make note of it in this bug report.