Red Hat Bugzilla – Bug 830031
Compile libvirt-0.9.8 for Windows DLL in MSYS/MinGW environment
Last modified: 2012-06-07 23:31:31 EDT
I want to build libvirt-0.9.8 for Windows. Then I download a MSYS environment and setup it.
Description of problem:
I added a new API for libvirt. both added into qemu and remote driver. then compiled successfully in local Linux. and work well.
Then I moved this modified package into MSYS/MinGW environment. and compiled it with compile_libvirt-0.9.8 script. then an error occured like
"List form of pipe open not implemented at ./rpc/genprotocol.pl line 29."
"make: *** [remote/remote_protocol.h] Error 255"
But there is no error when I used unmodified source package.
Version-Release number of selected component (if applicable):
How did this? Can you help me?
0.9.8 is a bit old; 0.9.12 is latest.
This sounds like your particular version of perl is outdated or not fully ported to mingw. The official mingw build of libvirt is built using a mingw cross-compiler run on a Linux box, rather than natively compiling on a Windows machine; and in that setup, perl is more functional. Furthermore, the reason you don't see this problem on a tarball, but do see it after modifying files to add your API, is because the tarball is shipped with files pre-generated.
What API are you trying to add? It would be better to propose this new API upstream at email@example.com, since others may also find this useful or may have better advice on how to do it; but be aware that library versioning implies that upstream will not accept your patch any sooner than the 0.9.13 release (that is, we don't backport APIs to older releases like 0.9.8 because it would cause a .so [or .dll] fork that is much harder to reconcile with our promise of being backwards compatible).
At any rate, since your problem appears to be with a faulty development environment, and not a bug in libvirt proper, I'm going to close this BZ.