错误提示:
from /home/lzx/work/test/mtk-openwrt-cc-v3.6/build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/linux-ramips_mt7628/compat-wireless-2016-01-10/compat/backport-3.13.c:35:
include/linux/utsname.h: In function 'utsname':
include/linux/utsname.h:77:17: error: dereferencing pointer to incomplete type
return ¤t->nsproxy->uts_ns->name;
^
此提示显示错在 current 没有定义,这个current在哪里定义,怎么查找不到。
在GCONF.C 中有:
static struct menu *current;
LEMON.C 中有:
static struct config *current = 0;
要如何解决问题?
编译 增加 KMOD-mac80211 选项時 无法成功
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- hualude_lzx 2021-09-09 20:19关注
#ifndef _LINUX_UTSNAME_H
#define _LINUX_UTSNAME_H#include <linux/sched.h>
#include <linux/kref.h>
#include <linux/nsproxy.h>
#include <linux/err.h>
#include <uapi/linux/utsname.h>//#include "expr.h"
//extern struct menu *current;enum uts_proc {
UTS_PROC_OSTYPE,
UTS_PROC_OSRELEASE,
UTS_PROC_VERSION,
UTS_PROC_HOSTNAME,
UTS_PROC_DOMAINNAME,
};struct user_namespace;
extern struct user_namespace init_user_ns;struct uts_namespace {
struct kref kref;
struct new_utsname name;
struct user_namespace *user_ns;
unsigned int proc_inum;
};
extern struct uts_namespace init_uts_ns;#ifdef CONFIG_UTS_NS
static inline void get_uts_ns(struct uts_namespace *ns)
{
kref_get(&ns->kref);
}extern struct uts_namespace *copy_utsname(unsigned long flags,
struct user_namespace *user_ns, struct uts_namespace *old_ns);
extern void free_uts_ns(struct kref *kref);static inline void put_uts_ns(struct uts_namespace *ns)
{
kref_put(&ns->kref, free_uts_ns);
}
#else
static inline void get_uts_ns(struct uts_namespace *ns)
{
}static inline void put_uts_ns(struct uts_namespace *ns)
{
}static inline struct uts_namespace *copy_utsname(unsigned long flags,
struct user_namespace *user_ns, struct uts_namespace *old_ns)
{
if (flags & CLONE_NEWUTS)
return ERR_PTR(-EINVAL);return old_ns;
}
#endif#ifdef CONFIG_PROC_SYSCTL
extern void uts_proc_notify(enum uts_proc proc);
#else
static inline void uts_proc_notify(enum uts_proc proc)
{
}
#endifstatic inline struct new_utsname *utsname(void)
{
return ¤t->nsproxy->uts_ns->name;
}static inline struct new_utsname *init_utsname(void)
{
return &init_uts_ns.name;
}extern struct rw_semaphore uts_sem;
#endif /* _LINUX_UTSNAME_H */
代码如上:
解决 无用评论 打赏 举报
悬赏问题
- ¥15 c程序不知道为什么得不到结果
- ¥40 复杂的限制性的商函数处理
- ¥15 程序不包含适用于入口点的静态Main方法
- ¥15 素材场景中光线烘焙后灯光失效
- ¥15 请教一下各位,为什么我这个没有实现模拟点击
- ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
- ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
- ¥20 有关区间dp的问题求解
- ¥15 多电路系统共用电源的串扰问题
- ¥15 slam rangenet++配置