Re: Trouble building NetworkManager



On Fri, 2014-06-27 at 13:54 +0200, Thomas Haller wrote:
On Fri, 2014-06-27 at 10:58 +0200, Thomas Haller wrote:
On Thu, 2014-06-26 at 19:28 -0400, Chris Shenkan wrote:
Hey Guys,

Having some trouble with building Network Manager on two different 
distros (Ubuntu and Arch).

On Ubuntu, the error seems to be that it can't find the NetworkManager 
module in generate-setting-docs.py
I can do from gi.repository import NetworkManager in a python session 
from my regular shell, but with the jhbuild shell's python sesison I cannot.

On Arch, it can find the module, however I receive this error instead 
(again with generate-setting-docs.py)

gi.repository.NetworkManager object has no attribute 'SettingDcb' 
seemingly in response to a __getattr call.

When I drop to shell and run make, I get a similar error:

the step GEN settings-docs.c gives the error: 
../../libnm-util/nm-setting-docs.xml:98: parser errror: Premature end of 
data in tag nm-setting-docs line 5

Could very easily be my own fault that I'm encountering these errors 
although I believe I've done everything correctly.

Thanks for any support you guys can offer.  I would really like to get 
NM to build so I can build the modules it depends on and start hacking 
at them :)



I have now a similar issue:


On Fedora, if I remove the gobject-introspection-devel package, the
following fails:

$ git clean -fdx && ./autogen.sh --enable-gtk-doc && make
...
Making all in api
make[3]: Entering directory `/data/src/NetworkManager/docs/api'
  DOC   Preparing build
  DOC   Scanning header files
  DOC   Introspecting gobjects
  DOC   Rebuilding template files
  DOC   Building XML
/bin/sh: -chmod: command not found
make[3]: *** No rule to make target `../../libnm-util/nm-setting-docs.xml', needed by `settings-spec.xml'.  
Stop.
make[3]: Leaving directory `/data/src/NetworkManager/docs/api'



But it does not fail during configure, but during make.

I think this was broken by commit
http://cgit.freedesktop.org/NetworkManager/NetworkManager/commit/?id=8252ebd941d17fff932023d29aac0bfe436d4bf9


The workaround is to install gobject-introspection-devel, or configure
with --disable-gtk-doc.


Oh, and after that, ./generate-setting-docs.py still fails.
(now I got the error you had, Chis).


First I get:

...
  CCLD     libtest-crypto.la
  GISCAN   NetworkManager-1.0.gir
./generate-setting-docs.py \
        --gir ./NetworkManager-1.0.gir \
        --output nm-setting-docs.xml
Traceback (most recent call last):
  File "./generate-setting-docs.py", line 19, in <module>
    from gi.repository import NetworkManager, GObject
ImportError:  No module named gi.repository
make[4]: *** [nm-setting-docs.xml] Error 1


So, I need pygobject3-base (guess, ./configure should detect that too?)


After installing pygobject3-base, I get:

make[4]: Entering directory `/NetworkManager/libnm-util'
./generate-setting-docs.py \
        --gir ./NetworkManager-1.0.gir \
        --output nm-setting-docs.xml
ERROR:root:Could not find any typelib for NetworkManager
Traceback (most recent call last):
  File "./generate-setting-docs.py", line 19, in <module>
    from gi.repository import NetworkManager, GObject
ImportError: cannot import name NetworkManager



Note, that installing NetworkManager-glib does not necessarily solve the issue:

./generate-setting-docs.py \
        --gir ./NetworkManager-1.0.gir \
        --output nm-setting-docs.xml
Traceback (most recent call last):
  File "./generate-setting-docs.py", line 167, in <module>
    new_func = NetworkManager.__getattr__(settingxml.attrib['name'])
  File "/usr/lib/python2.7/site-packages/gi/module.py", line 313, in __getattr__
    return getattr(self._introspection_module, name)
  File "/usr/lib/python2.7/site-packages/gi/module.py", line 134, in __getattr__
    self.__name__, name))
AttributeError: 'gi.repository.NetworkManager' object has no attribute 'SettingDcb'
make[4]: *** [nm-setting-docs.xml] Error 1


and of course,  building NM should not require NM-glib.
I guess, ./generate-setting-docs.py should set it's search path, to find
$(top_srcdir)/libnm-util/NetworkManager-1.0.typelib ...



Thomas

Attachment: signature.asc
Description: This is a digitally signed message part



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]