Parallels VM Tools on Gentoo VM - GCC Install Error

Discussion in 'Linux Guest OS Discussion' started by Akytarus, Jan 5, 2019.

  1. Akytarus

    Akytarus Bit Poster

    Messages:
    2
    Trying to install Parallel Tools on Gentoo

    gcc has an error compiling prl_eth/pvmnet

    "/usr/lib64/parallels-tools/kmods/prl_eth/pvmnet/pvmnet.c:194:3: error: 'struct ethtool_ops' has no member named 'get_settings'; did you mean 'get_strings'?"

    does anyone know what this means?

    This use to install fine before I did some package updates...

    -- below is the full error on install...

    Code:
    Started installation of Parallels Guest Tools version '14.0.1.45154'
    
    Sat Jan 5 10:26:34 MST 2019
    Start installation or upgrade of Guest Tools
    /usr/lib64/parallels-tools/kmods/prl_eth/pvmnet/pvmnet.c:194:3: error: 'struct ethtool_ops' has no member named 'get_settings'; did you mean 'get_strings'?
      .get_settings           = pvmnet_get_settings,
       ^~~~~~~~~~~~
       get_strings
    /usr/lib64/parallels-tools/kmods/prl_eth/pvmnet/pvmnet.c:194:28: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
      .get_settings           = pvmnet_get_settings,
                                ^~~~~~~~~~~~~~~~~~~
    /usr/lib64/parallels-tools/kmods/prl_eth/pvmnet/pvmnet.c:194:28: note: (near initialization for 'pvmnet_ethtool_ops.get_drvinfo')
    cc1: some warnings being treated as errors
    make[3]: *** [scripts/Makefile.build:292: /usr/lib64/parallels-tools/kmods/prl_eth/pvmnet/pvmnet.o] Error 1
    make[2]: *** [Makefile:1563: _module_/usr/lib64/parallels-tools/kmods/prl_eth/pvmnet] Error 2
    make[1]: *** [/usr/lib64/parallels-tools/kmods/prl_eth/pvmnet/Makefile.v26:11: all] Error 2
    make: *** [Makefile.kmods:49: compile] Error 2
    Error: could not build kernel modules
    Error during report about failed installation of parallels tools.
    Error: failed to install Parallels Guest Tools!
    
     
  2. ParallelsU210

    ParallelsU210 Bit Poster

    Messages:
    1
    I also met the same problem and just fixed it. Hope my solution can help you.
    This problem is caused by ethtool deletingthe member variable ".get_settings" of struct ethtool_ops. So we just need to delete ".get_settings = pvmnet_get_settings,".
    More specific steps are as follows:

    Code:
    > cp -r /mnt/cdrom ~/tmp
    > cd ~/tmp/kmods
    > tar xvf ./prl_mod.tar.gz
    > vim prl_eth/pvmnet/pvmnet.c
    
    | and replace the line (or just delete the line)
    |------------------------------------------------------------
    | 	.get_settings = pvmnet_get_settings,
    |------------------------------------------------------------
    | with
    |------------------------------------------------------------
    | #ifndef ETHTOOL_GLINKSETTINGS
    | 	.get_settings = pvmnet_get_settings,
    | #endif
    |------------------------------------------------------------
    
    > tar -zcvf prl_mod.tar.gz ./ dkms.conf Makefile.kmods
    > cd ~/tmp
    > ./install --install
    
     
    Maria@Parallels likes this.
  3. Akytarus

    Akytarus Bit Poster

    Messages:
    2
    Thanks, I'll give that a try....
    Edit: It worked, Thanks for the help...
     
    Last edited: Jan 17, 2019
    Maria@Parallels likes this.

Share This Page