vmware / open-vm-tools

Official repository of VMware open-vm-tools project
http://sourceforge.net/projects/open-vm-tools/
2.26k stars 427 forks source link

Remove Make reliance on libffi.la #737

Open kubedzero opened 2 months ago

kubedzero commented 2 months ago

Describe the bug

I'm trying to compile on Unraid/Slackware Linux x86_64, Linux 6.8.12. No issues during the autoreconf -i or ./configure steps. During the make step I get an error libtool: error: cannot find the library '/usr/lib64/../lib64/libffi.la' or unhandled argument '/usr/lib64/../lib64/libffi.la' with libffi-3.4.6-x86_64-1.txz but if I install an older version, libffi-3.2.1-x86_64-1.txz I am able to succeed in the Make.

Reading https://www.linuxquestions.org/questions/slackware-14/slackware-current-missing-la-files-4175628441/ it seems that .la files are being deprecated in newer package builds, and I wanted to request that the Make file for open-vm-tools be updated so we're not forced to use an old version of libffi that still has a libffi.la file.

Thanks!

Reproduction steps

  1. Install libffi-3.4.6-x86_64-1.txz
  2. Run make on Slackware Linux/Unraid after running ./configure --build=x86_64-slackware-linux --prefix=/usr --libdir=/usr/lib64 --sysconfdir=/etc --localstatedir=/var --mandir=/usr/man --disable-containerinfo --disable-vgauth --without-pam --disable-dependency-tracking --disable-docs --without-x
  3. See failure libtool: error: cannot find the library '/usr/lib64/../lib64/libffi.la' or unhandled argument '/usr/lib64/../lib64/libffi.la'
  4. Install libffi-3.2.1-x86_64-1.txz
  5. Run make and the build succeeds ...

Expected behavior

The build should succeed with the latest version of libffi or at least versions without libffi.la bundled, as per https://www.linuxquestions.org/questions/slackware-14/slackware-current-missing-la-files-4175628441/

Additional context

No response

pengzhencao commented 2 months ago

I have raised bug report internally. Will evaluate the change needed in open-vm-tools makefile and update here when there is progress.