Web lists-archives.com

Re: make failing in custom code




Hi,

On Thu, Sep 27, 2018 at 4:31 PM, Tapas Mishra  wrote:
> Hi,
> I am trying to do a project  when I do a make on project code
> in cygwin environment I get following error
>
> gcc -Wall -g -c main.c -o main.o
> main.c: In function ‘main’:
> main.c:50:8: warning: unused variable ‘physmem’ [-Wunused-variable]
>   char *physmem = page_table_get_physmem(pt);
>         ^~~~~~~
> gcc -Wall -g -c page_table.c -o page_table.o
> page_table.c: In function ‘page_table_set_entry’:
> page_table.c:125:2: warning: implicit declaration of function
> ‘remap_file_pages’ [-Wimplicit-function-declaration]
>   remap_file_pages(pt->virtmem+page*PAGE_SIZE,PAGE_SIZE,0,frame,0);
>   ^~~~~~~~~~~~~~~~
> gcc -Wall -g -c disk.c -o disk.o
> gcc -Wall -g -c program.c -o program.o
> gcc main.o page_table.o disk.o program.o -o virtmem
> page_table.o: In function `page_table_set_entry':
> /home/DEEL/cs602/try1/page_table.c:125: undefined reference to
> `remap_file_pages'
> /home/DEEL/cs602/try1/page_table.c:125:(.text+0x491): relocation
> truncated to fit: R_X86_64_PC32 against undefined symbol
> `remap_file_pages'
> collect2: error: ld returned 1 exit status
> make: *** [makefile:2: virtmem] Error 1
>
> I compiled the same code on a linux instance hosted on amazon cloud
> and it compiled successfully. So this brought me to a conclusion some
> files are missing in cygwin and hence I reached here.

remap_file_pages is a Linux system call:

http://man7.org/linux/man-pages/man2/remap_file_pages.2.html

It is not implemented on Cygwin.


Csaba
-- 
You can get very substantial performance improvements
by not doing the right thing. - Scott Meyers, An Effective C++11/14 Sampler
So if you're looking for a completely portable, 100% standards-conformat way
to get the wrong information: this is what you want. - Scott Meyers (C++TDaWYK)

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple