DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] eal/linux: fix build
@ 2015-03-03  8:44 Thomas Monjalon
  2015-03-03  9:12 ` David Marchand
  0 siblings, 1 reply; 6+ messages in thread
From: Thomas Monjalon @ 2015-03-03  8:44 UTC (permalink / raw)
  To: dev

Compilation fails in some distributions because of missing unistd.h
needed for pread/pwrite (seen with Suse):
	lib/librte_eal/linuxapp/eal/eal_pci_uio.c:62:2:
	error: implicit declaration of function ‘pread’

Fixes: 4a499c649590 ("eal/linux: enable uio_pci_generic support")

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
---
 lib/librte_eal/linuxapp/eal/eal_pci_uio.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/librte_eal/linuxapp/eal/eal_pci_uio.c b/lib/librte_eal/linuxapp/eal/eal_pci_uio.c
index 35d31c5..0b397ca 100644
--- a/lib/librte_eal/linuxapp/eal/eal_pci_uio.c
+++ b/lib/librte_eal/linuxapp/eal/eal_pci_uio.c
@@ -32,6 +32,7 @@
  */
 
 #include <string.h>
+#include <unistd.h>
 #include <fcntl.h>
 #include <dirent.h>
 #include <sys/stat.h>
-- 
2.2.2

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dpdk-dev] [PATCH] eal/linux: fix build
  2015-03-03  8:44 [dpdk-dev] [PATCH] eal/linux: fix build Thomas Monjalon
@ 2015-03-03  9:12 ` David Marchand
  2015-03-03 22:23   ` Thomas Monjalon
  0 siblings, 1 reply; 6+ messages in thread
From: David Marchand @ 2015-03-03  9:12 UTC (permalink / raw)
  To: Thomas Monjalon; +Cc: dev

On Tue, Mar 3, 2015 at 9:44 AM, Thomas Monjalon <thomas.monjalon@6wind.com>
wrote:

> Compilation fails in some distributions because of missing unistd.h
> needed for pread/pwrite (seen with Suse):
>         lib/librte_eal/linuxapp/eal/eal_pci_uio.c:62:2:
>         error: implicit declaration of function ‘pread’
>
> Fixes: 4a499c649590 ("eal/linux: enable uio_pci_generic support")
>
> Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
> ---
>  lib/librte_eal/linuxapp/eal/eal_pci_uio.c | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/lib/librte_eal/linuxapp/eal/eal_pci_uio.c
> b/lib/librte_eal/linuxapp/eal/eal_pci_uio.c
> index 35d31c5..0b397ca 100644
> --- a/lib/librte_eal/linuxapp/eal/eal_pci_uio.c
> +++ b/lib/librte_eal/linuxapp/eal/eal_pci_uio.c
> @@ -32,6 +32,7 @@
>   */
>
>  #include <string.h>
> +#include <unistd.h>
>  #include <fcntl.h>
>  #include <dirent.h>
>  #include <sys/stat.h>
>
>
Acked-by: David Marchand <david.marchand@6wind.com>

-- 
David Marchand

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dpdk-dev] [PATCH] eal/linux: fix build
  2015-03-03  9:12 ` David Marchand
@ 2015-03-03 22:23   ` Thomas Monjalon
  2015-03-05  9:13     ` Qiu, Michael
  0 siblings, 1 reply; 6+ messages in thread
From: Thomas Monjalon @ 2015-03-03 22:23 UTC (permalink / raw)
  To: David Marchand; +Cc: dev

> > Compilation fails in some distributions because of missing unistd.h
> > needed for pread/pwrite (seen with Suse):
> >         lib/librte_eal/linuxapp/eal/eal_pci_uio.c:62:2:
> >         error: implicit declaration of function ‘pread’
> >
> > Fixes: 4a499c649590 ("eal/linux: enable uio_pci_generic support")
> >
> > Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
> Acked-by: David Marchand <david.marchand@6wind.com>

Applied

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dpdk-dev] [PATCH] eal/linux: fix build
  2015-03-03 22:23   ` Thomas Monjalon
@ 2015-03-05  9:13     ` Qiu, Michael
  2015-03-05  9:28       ` Ananyev, Konstantin
  2015-03-05  9:51       ` Thomas Monjalon
  0 siblings, 2 replies; 6+ messages in thread
From: Qiu, Michael @ 2015-03-05  9:13 UTC (permalink / raw)
  To: Thomas Monjalon, David Marchand; +Cc: dev

On 3/4/2015 6:24 AM, Thomas Monjalon wrote:
>>> Compilation fails in some distributions because of missing unistd.h
>>> needed for pread/pwrite (seen with Suse):
>>>         lib/librte_eal/linuxapp/eal/eal_pci_uio.c:62:2:
>>>         error: implicit declaration of function ‘pread’
>>>
>>> Fixes: 4a499c649590 ("eal/linux: enable uio_pci_generic support")
>>>
>>> Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
>> Acked-by: David Marchand <david.marchand@6wind.com>
> Applied

Hi, Thomas

This patch may be need to be reverted, as the error still exists.

suse-11-sp3-32:~/dpdk # uname -a
Linux suse-11-sp3-32 3.0.76-0.11-pae #1 SMP Fri Jun 14 08:21:43 UTC 2013
(ccab990) i686 i686 i386 GNU/Linux

suse-11-sp3-32:~/dpdk # gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/i686-pc-linux-gnu/4.5.1/lto-wrapper
Target: i686-pc-linux-gnu
Configured with: ./configure
Thread model: posix
gcc version 4.5.1 (GCC)

As I try to check the manual of pread, find that it has two:
----------------------------------------------------------
Man: find all matching manual pages
 * pread (2)
   pread (3p)
Man: What manual page do you want?
Man:
-------------------------------------------------------------
PREAD(2)                                                         Linux
Programmer's
Manual                                                        PREAD(2)



NAME
       pread, pwrite - read from or write to a file descriptor at a
given offset

SYNOPSIS
       #define _XOPEN_SOURCE 500

       #include <unistd.h>

       ssize_t pread(int fd, void *buf, size_t count, off_t offset);

       ssize_t pwrite(int fd, const void *buf, size_t count, off_t offset);

--------------------------------------------------------------------------------------------------------------------------------------------

READ(3P)                                                         POSIX
Programmer's
Manual                                                        READ(3P)



PROLOG
       This  manual page is part of the POSIX Programmer's Manual.  The
Linux implementation of this interface may differ (consult the
corresponding Linux
       manual page for details of Linux behavior), or the interface may
not be implemented on Linux.

NAME
       pread, read - read from a file

SYNOPSIS
       #include <unistd.h>



       ssize_t pread(int fildes, void *buf, size_t nbyte, off_t offset);
       ssize_t read(int fildes, void *buf, size_t nbyte);


DESCRIPTION

------------------------------------------------------------------------------------------------------------------------------------------

While I try to add marco #define _XOPEN_SOURCE 500

Other errors show up

Who knows how to solve this issue?

Thanks,
Michael

>


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dpdk-dev] [PATCH] eal/linux: fix build
  2015-03-05  9:13     ` Qiu, Michael
@ 2015-03-05  9:28       ` Ananyev, Konstantin
  2015-03-05  9:51       ` Thomas Monjalon
  1 sibling, 0 replies; 6+ messages in thread
From: Ananyev, Konstantin @ 2015-03-05  9:28 UTC (permalink / raw)
  To: Qiu, Michael, Thomas Monjalon, David Marchand; +Cc: dev



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Qiu, Michael
> Sent: Thursday, March 05, 2015 9:13 AM
> To: Thomas Monjalon; David Marchand
> Cc: dev@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH] eal/linux: fix build
> 
> On 3/4/2015 6:24 AM, Thomas Monjalon wrote:
> >>> Compilation fails in some distributions because of missing unistd.h
> >>> needed for pread/pwrite (seen with Suse):
> >>>         lib/librte_eal/linuxapp/eal/eal_pci_uio.c:62:2:
> >>>         error: implicit declaration of function 'pread'
> >>>
> >>> Fixes: 4a499c649590 ("eal/linux: enable uio_pci_generic support")
> >>>
> >>> Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
> >> Acked-by: David Marchand <david.marchand@6wind.com>
> > Applied
> 
> Hi, Thomas
> 
> This patch may be need to be reverted, as the error still exists.
> 
> suse-11-sp3-32:~/dpdk # uname -a
> Linux suse-11-sp3-32 3.0.76-0.11-pae #1 SMP Fri Jun 14 08:21:43 UTC 2013
> (ccab990) i686 i686 i386 GNU/Linux
> 
> suse-11-sp3-32:~/dpdk # gcc -v
> Using built-in specs.
> COLLECT_GCC=gcc
> COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/i686-pc-linux-gnu/4.5.1/lto-wrapper
> Target: i686-pc-linux-gnu
> Configured with: ./configure
> Thread model: posix
> gcc version 4.5.1 (GCC)
> 
> As I try to check the manual of pread, find that it has two:
> ----------------------------------------------------------
> Man: find all matching manual pages
>  * pread (2)
>    pread (3p)
> Man: What manual page do you want?
> Man:
> -------------------------------------------------------------
> PREAD(2)                                                         Linux
> Programmer's
> Manual                                                        PREAD(2)
> 
> 
> 
> NAME
>        pread, pwrite - read from or write to a file descriptor at a
> given offset
> 
> SYNOPSIS
>        #define _XOPEN_SOURCE 500
> 
>        #include <unistd.h>
> 
>        ssize_t pread(int fd, void *buf, size_t count, off_t offset);
> 
>        ssize_t pwrite(int fd, const void *buf, size_t count, off_t offset);
> 
> --------------------------------------------------------------------------------------------------------------------------------------------
> 
> READ(3P)                                                         POSIX
> Programmer's
> Manual                                                        READ(3P)
> 
> 
> 
> PROLOG
>        This  manual page is part of the POSIX Programmer's Manual.  The
> Linux implementation of this interface may differ (consult the
> corresponding Linux
>        manual page for details of Linux behavior), or the interface may
> not be implemented on Linux.
> 
> NAME
>        pread, read - read from a file
> 
> SYNOPSIS
>        #include <unistd.h>
> 
> 
> 
>        ssize_t pread(int fildes, void *buf, size_t nbyte, off_t offset);
>        ssize_t read(int fildes, void *buf, size_t nbyte);
> 
> 
> DESCRIPTION
> 
> ------------------------------------------------------------------------------------------------------------------------------------------
> 
> While I try to add marco #define _XOPEN_SOURCE 500
> 
> Other errors show up
> 
> Who knows how to solve this issue?
> 
> Thanks,
> Michael
> 
> >

Can you try to add:
CFLAGS_<file_name>.o := -D_GNU_SOURCE

to your Makefile?

Konstantin

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dpdk-dev] [PATCH] eal/linux: fix build
  2015-03-05  9:13     ` Qiu, Michael
  2015-03-05  9:28       ` Ananyev, Konstantin
@ 2015-03-05  9:51       ` Thomas Monjalon
  1 sibling, 0 replies; 6+ messages in thread
From: Thomas Monjalon @ 2015-03-05  9:51 UTC (permalink / raw)
  To: Qiu, Michael; +Cc: dev

Hi Michael,

2015-03-05 09:13, Qiu, Michael:
> On 3/4/2015 6:24 AM, Thomas Monjalon wrote:
> >>> Compilation fails in some distributions because of missing unistd.h
> >>> needed for pread/pwrite (seen with Suse):
> >>>         lib/librte_eal/linuxapp/eal/eal_pci_uio.c:62:2:
> >>>         error: implicit declaration of function ‘pread’
> >>>
> >>> Fixes: 4a499c649590 ("eal/linux: enable uio_pci_generic support")
> >>>
> >>> Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
> >> Acked-by: David Marchand <david.marchand@6wind.com>
> > Applied
> 
> Hi, Thomas
> 
> This patch may be need to be reverted, as the error still exists.

No I don't think it should be reverted. It must be completed.

[...]
> NAME
>        pread, pwrite - read from or write to a file descriptor at a
> given offset
> 
> SYNOPSIS
>        #define _XOPEN_SOURCE 500
> 
>        #include <unistd.h>
[...]
> While I try to add marco #define _XOPEN_SOURCE 500

I think that the good thing to do.

> Other errors show up

Are they hard to fix?

> Who knows how to solve this issue?

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-03-05  9:52 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-03  8:44 [dpdk-dev] [PATCH] eal/linux: fix build Thomas Monjalon
2015-03-03  9:12 ` David Marchand
2015-03-03 22:23   ` Thomas Monjalon
2015-03-05  9:13     ` Qiu, Michael
2015-03-05  9:28       ` Ananyev, Konstantin
2015-03-05  9:51       ` Thomas Monjalon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).