試圖建立一個開源項目(systemd,不necesarilly相關的),我被困在下面的錯誤(也沒有直接關係)已經被定義爲:如何追查,其中未申報的常數應該在linux
CC src/libsystemd/sd-rtnl/libsystemd_la-rtnl-types.lo
src/libsystemd/sd-rtnl/rtnl-types.c:278:10: error: 'IFLA_INET6_ADDR_GEN_MODE' undeclared here (not in a function)
[IFLA_INET6_ADDR_GEN_MODE] = { .type = NLA_U8 },
^
src/libsystemd/sd-rtnl/rtnl-types.c:278:9: error: array index in initializer not of integer type
[IFLA_INET6_ADDR_GEN_MODE] = { .type = NLA_U8 },
^
src/libsystemd/sd-rtnl/rtnl-types.c:278:9: error: (near initialization for 'rtnl_af_spec_inet6_types')
src/libsystemd/sd-rtnl/rtnl-types.c:278:9: warning: excess elements in array initializer [enabled by default]
src/libsystemd/sd-rtnl/rtnl-types.c:278:9: warning: (near initialization for 'rtnl_af_spec_inet6_types') [enabled by default]
我的問題則是:
我怎麼想通了其中IFLA_INET6_ADDR_GEN_MODE
應該被定義/什麼標題我缺少
我自己的想法是:
- 谷歌的錯誤信息(沒有運氣,OFC,否則我就不會在這裏..)
- 搜索它在我的所有文件
sudo rgrep IFLA_INET6_ADDR_GEN_MODE /
- 你的想法?
一個偉大的回答會是這樣,你的理由/學習/學習去知道這個常量聲明,使我和其他讀者去學習,而不是簡單地看一個事實。
更新(編譯程序):
git clone [email protected]:systemd/systemd.git
cd systemd/
./autogen.sh
./configure CFLAGS='-g -O0 -ftrapv' --enable-compat-libs --enable-kdbus --sysconfdir=/etc --localstatedir=/var --libdir=/usr/lib --enable-gtk-doc --with-rootprefix= --with-rootlibdir=/lib --disable-gnutls
make
應在配置腳本中檢查。查看'configure'的輸出以進行相關測試。 – 2015-02-09 14:01:54
你可以粘貼你如何建立systemd的步驟。可能我們可以試試嗎? – 2015-02-09 14:10:28
@WilliamPursell我在輸出中看不到任何警報。我在找什麼? https://dl.dropboxusercontent.com/u/2008558/configure.out – kidmose 2015-02-10 09:03:48