OpenCores
no use no use 1/1 no use no use
undefined reference to `screen_info'
by meitoku on Apr 4, 2014
meitoku
Posts: 26
Joined: Nov 21, 2013
Last seen: Oct 18, 2015
Hi everyone, today I build vmlinux with the following commands: make ARCH=openrisc menuconfig
#config for DE1 board make vmlinux
It took about 30 minutes then errors started to appear: drivers/built-in.o: In function `vgacon_init':
/home/duc/lab/linux/drivers/video/console/vgacon.c:587: undefined reference to `screen_info'
/home/duc/lab/linux/drivers/video/console/vgacon.c:589: undefined reference to `screen_info'
drivers/built-in.o: In function `vgacon_startup':
/home/duc/lab/linux/drivers/video/console/vgacon.c:375: undefined reference to `screen_info'
/home/duc/lab/linux/drivers/video/console/vgacon.c:375: undefined reference to `screen_info'
/home/duc/lab/linux/drivers/video/console/vgacon.c:409: undefined reference to `screen_info'
drivers/built-in.o:/home/duc/lab/linux/drivers/video/console/vgacon.c:409: more undefined references to `screen_info' follow
make: *** [vmlinux] Error 1
How can I solve this?
RE: undefined reference to `screen_info'
by fjullien on Apr 4, 2014
fjullien
Posts: 5
Joined: Mar 12, 2014
Last seen: Jan 23, 2018
Hi, you need this: diff --git a/arch/openrisc/kernel/setup.c b/arch/openrisc/kernel/setup.c
index 7d38b42..78b3516 100644
--- a/arch/openrisc/kernel/setup.c
+++ b/arch/openrisc/kernel/setup.c
@@ -39,6 +39,7 @@
#include
#include
#include
+#include

#include
#include
@@ -51,6 +52,10 @@

#include "vmlinux.h"
+#if defined(CONFIG_VGA_CONSOLE) || defined(CONFIG_DUMMY_CONSOLE)
+struct screen_info screen_info;
+#endif
+
static unsigned long __init setup_memory(void)
{
unsigned long bootmap_size;

Franck.
RE: undefined reference to `screen_info'
by meitoku on Apr 7, 2014
meitoku
Posts: 26
Joined: Nov 21, 2013
Last seen: Oct 18, 2015
Thanks, but I still has some problems. First I applied your diff file raw, it had a malformed error. I thought it was something about whitespaces. After whitespaces were added, I patched and "hunk failed". I have to fix setup.c manually by adding: #include and #if defined(CONFIG_VGA_CONSOLE) ... But when I build vmlinux again, with: make ARCH=openrisc menuconfig #change Builtin DTB to (de1)
make ARCH=openrisc CROSS_COMPILE=or1k-elf- vmlinux
After a while, I had errors: CHK include/generated/compile.h
UPD include/generated/compile.h
CC init/version.o
LD init/built-in.o
KSYM .tmp_kallsyms1.o
.tmp_kallsyms1.o: In function `kallsyms_addresses': (.rodata+0x0): undefined reference to `_text'
.tmp_kallsyms1.o: In function `kallsyms_addresses': (.rodata+0x4): undefined reference to `_text'
.tmp_kallsyms1.o: In function `kallsyms_addresses': (.rodata+0x8): undefined reference to `_text'
.tmp_kallsyms1.o: In function `kallsyms_addresses': (.rodata+0xc): undefined reference to `_text'
.tmp_kallsyms1.o: In function `kallsyms_addresses': (.rodata+0x10): undefined reference to `_text'
.tmp_kallsyms1.o:(.rodata+0x14): more undefined references to `_text' follow
make: *** [vmlinux] Error 1
RE: undefined reference to `screen_info'
by NamTC on Apr 17, 2014
NamTC
Posts: 3
Joined: Dec 11, 2013
Last seen: Jun 9, 2014
to solve this error, i have done follow the direction below:
diff --git a/arch/openrisc/kernel/vmlinux.lds.S b/arch/openrisc/kernel/vmlinux.lds.S
index 2d69a85..77d609d 100644
--- a/arch/openrisc/kernel/vmlinux.lds.S
+++ b/arch/openrisc/kernel/vmlinux.lds.S
-41,6 +41,7 SECTIONS
/* _s_kernel_ro must be page aligned */
. = ALIGN(PAGE_SIZE);
_s_kernel_ro = .;
+ _text = .;

.text : AT(ADDR(.text) - LOAD_OFFSET)
{
but, after adding the line of "_text=.;" in vmlinux.lds.S file and make again i still a other problem:
LINK vmlinux
LD vmlinux.o
MODPOST vmlinux.o
GEN .version
CHK include/generated/compile.h
UPD include/generated/compile.h
CC init/version.o
LD init/built-in.o
or1k-elf-ld:/home/namtc/linux/arch/openrisc/kernel/vmlinux.lds:282: syntax error
make: *** [vmlinux] Error 1
Tell me how to solve the above error?. thanks!
no use no use 1/1 no use no use
© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.