Problem building in a directory shared from Mac to Ubuntu

Started by Ashutosh Bapatover 12 years ago4 messages
#1Ashutosh Bapat
ashutosh.bapat@enterprisedb.com

Hi,
I am observing a strange problem when I build latest PostgreSQL head on
Ubuntu 12.04. I am running Ubuntu 12.04 as VM on Mac 10.7. The build
directory points to a sub-directory of host directory shared from Mac to
Ubuntu 12.04. The source is also located in a sub-directory of the shared
directory.

postmaster builds without any error, but all the binaries in src/bin fail
to link with error "undefined reference to `pthread_sigmask'". If I add
-pthread to the link command the binaries link without error.

If I build it on a directory local to VM and also place my source in a
directory local to VM, the build goes fine.

Is this a known issue? What's the cure?
--
Best Wishes,
Ashutosh Bapat
EntepriseDB Corporation
The Postgres Database Company

#2Ashutosh Bapat
ashutosh.bapat@enterprisedb.com
In reply to: Ashutosh Bapat (#1)
1 attachment(s)
Re: Problem building in a directory shared from Mac to Ubuntu

Sorry, forgot to attach the config.log and output of make (a clean make).
here it is

On Tue, Jun 25, 2013 at 10:44 AM, Ashutosh Bapat <
ashutosh.bapat@enterprisedb.com> wrote:

Hi,
I am observing a strange problem when I build latest PostgreSQL head on
Ubuntu 12.04. I am running Ubuntu 12.04 as VM on Mac 10.7. The build
directory points to a sub-directory of host directory shared from Mac to
Ubuntu 12.04. The source is also located in a sub-directory of the shared
directory.

postmaster builds without any error, but all the binaries in src/bin fail
to link with error "undefined reference to `pthread_sigmask'". If I add
-pthread to the link command the binaries link without error.

If I build it on a directory local to VM and also place my source in a
directory local to VM, the build goes fine.

Is this a known issue? What's the cure?
--
Best Wishes,
Ashutosh Bapat
EntepriseDB Corporation
The Postgres Database Company

--
Best Wishes,
Ashutosh Bapat
EntepriseDB Corporation
The Postgres Database Company

Attachments:

pg_build.tgzapplication/x-gzip; name=pg_build.tgzDownload
#3Craig Ringer
craig@2ndquadrant.com
In reply to: Ashutosh Bapat (#1)
Re: Problem building in a directory shared from Mac to Ubuntu

On 06/25/2013 01:14 PM, Ashutosh Bapat wrote:

Hi,
I am observing a strange problem when I build latest PostgreSQL head on
Ubuntu 12.04. I am running Ubuntu 12.04 as VM on Mac 10.7. The build
directory points to a sub-directory of host directory shared from Mac to
Ubuntu 12.04.

"shared" how?

AFP?

SMB/CIFS? With mount.cifs?

Using NFS?

In general I'd recommend using a local directory for builds. Most
network file protocols have ... interesting ... behaviour when it comes
to file locking, timestamps, etc.

Why are you using this approach rather than just having local build trees?

--
Craig Ringer http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

#4Ashutosh Bapat
ashutosh.bapat@enterprisedb.com
In reply to: Craig Ringer (#3)
Re: Problem building in a directory shared from Mac to Ubuntu

On Tue, Jun 25, 2013 at 12:03 PM, Craig Ringer <craig@2ndquadrant.com>wrote:

On 06/25/2013 01:14 PM, Ashutosh Bapat wrote:

Hi,
I am observing a strange problem when I build latest PostgreSQL head on
Ubuntu 12.04. I am running Ubuntu 12.04 as VM on Mac 10.7. The build
directory points to a sub-directory of host directory shared from Mac to
Ubuntu 12.04.

"shared" how?

You can share the directories between Host and VM using VMware Fusion.
There is no network involved.

AFP?

SMB/CIFS? With mount.cifs?

Using NFS?

In general I'd recommend using a local directory for builds. Most
network file protocols have ... interesting ... behaviour when it comes
to file locking, timestamps, etc.

Why are you using this approach rather than just having local build trees?

So that, 1. I can use the data between VM and host seemlessly (the binaries
will be useless, I agree, but the source code will be useful) 2. I can
share the same directory across more than one VM (binaries will be useful
in case two VMs are same). Like building source once and using it on
multiple VMs. 3. if VM crashes, the host will have the data in-tact.

--
Craig Ringer http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

--
Best Wishes,
Ashutosh Bapat
EntepriseDB Corporation
The Postgres Database Company