Re: v0.8.* make failed under Linux x64

瀏覽次數:1,708 次
跳到第一則未讀訊息

mscdex

未讀,
2012年7月11日 凌晨3:15:332012/7/11
收件者:nodejs
On Jul 10, 11:30 pm, Mindon Feng <min...@gmail.com> wrote:
> v0.6.19 make & install OK, but not v0.8

What commands did you issue when attempting to build?

It should just be a matter of: ./configure && make

You may want to perform a `make distclean` first to make sure you have
all intermediate files out of the way that might be causing problems.

Michael Smith

未讀,
2012年7月11日 下午4:33:262012/7/11
收件者:nod...@googlegroups.com
I also had the same problem with 0.7.12. Commands and output are below.

~/node-v0.7.12 # ./configure
{ 'target_defaults': { 'cflags': [],
                       'default_configuration': 'Release',
                       'defines': [],
                       'include_dirs': [],
                       'libraries': []},
  'variables': { 'host_arch': 'ia32',
                 'node_install_npm': 'true',
                 'node_install_waf': 'true',
                 'node_prefix': '',
                 'node_shared_v8': 'false',
                 'node_shared_zlib': 'false',
                 'node_use_dtrace': 'false',
                 'node_use_etw': 'false',
                 'node_use_openssl': 'true',
                 'node_use_system_openssl': 'false',
                 'strict_aliasing': 'true',
                 'target_arch': 'ia32',
                 'v8_use_snapshot': 'true'}}
creating  ./config.gypi
creating  ./config.mk
~/node-v0.7.12 # make
make -C out BUILDTYPE=Release
make[1]: Entering directory `/root/node-v0.7.12/out'
make[1]: *** No rule to make target `/root/node-v0.7.12/out/Release/obj.target/v8_base/gen/debug-support.o', needed by `/root/node-v0.7.12/out/Release/obj.target/deps/v8/tools/gyp/libv8_base.a'.  Stop.
make[1]: Leaving directory `/root/node-v0.7.12/out'
make: *** [node] Error 2

Ben Noordhuis

未讀,
2012年7月11日 下午4:41:112012/7/11
收件者:nod...@googlegroups.com
On Wed, Jul 11, 2012 at 10:05 PM, Michael Smith <max...@gmail.com> wrote:
> Hi there!
>
> So, I'm not Mindon Feng, but I'm running into the same problem. I'm running
> an antiquated version of SLES with python 2.7.3 compiled from gzipped
> tarball. Below is the results of my running make distclean followed by
> ./configure && make.
>
> ~/node-v0.8.2 # make distclean
> rm -rf out
> rm -f config.gypi
> rm -f config.mk
> rm -rf node node_g blog.html email.md
> rm -rf node_modules
>
> ~/node-v0.8.2 # ./configure && make
> { 'target_defaults': { 'cflags': [],
> 'default_configuration': 'Release',
> 'defines': [],
> 'include_dirs': [],
> 'libraries': []},
> 'variables': { 'host_arch': 'ia32',
> 'node_install_npm': 'true',
> 'node_install_waf': 'true',
> 'node_no_strict_aliasing': 1,
> 'node_prefix': '',
> 'node_shared_openssl': 'false',
> 'node_shared_v8': 'false',
> 'node_shared_zlib': 'false',
> 'node_use_dtrace': 'false',
> 'node_use_etw': 'false',
> 'node_use_openssl': 'true',
> 'target_arch': 'ia32',
> 'v8_no_strict_aliasing': 1,
> 'v8_use_snapshot': 'true'}}
> creating ./config.gypi
> creating ./config.mk
> make -C out BUILDTYPE=Release
> make[1]: Entering directory `/root/node-v0.8.2/out'
> make[1]: *** No rule to make target
> `/root/node-v0.8.2/out/Release/obj.target/v8_base/gen/debug-support.o',
> needed by
> `/root/node-v0.8.2/out/Release/obj.target/deps/v8/tools/gyp/libv8_base.a'.
> Stop.
> make[1]: Leaving directory `/root/node-v0.8.2/out'
> make: *** [node] Error 2
>
> Thoughts?

That's the whole output? What happens when you edit common.gypi and
set v8_postmortem_support to false?

Michael Smith

未讀,
2012年7月11日 下午5:08:022012/7/11
收件者:nod...@googlegroups.com
Hello again!


On Wednesday, July 11, 2012 1:41:11 PM UTC-7, Ben Noordhuis wrote:


That's the whole output? What happens when you edit common.gypi and
set v8_postmortem_support to false?

So I did as you asked and got a somewhat different error. Now it seems to be missing snapshot.cc. (note: this is still 0.8.2)

./configure && make
{ 'target_defaults': { 'cflags': [],
                       'default_configuration': 'Release',
                       'defines': [],
                       'include_dirs': [],
                       'libraries': []},
  'variables': { 'host_arch': 'ia32',
                 'node_install_npm': 'true',
                 'node_install_waf': 'true',
                 'node_no_strict_aliasing': 1,
                 'node_prefix': '',
                 'node_shared_openssl': 'false',
                 'node_shared_v8': 'false',
                 'node_shared_zlib': 'false',
                 'node_use_dtrace': 'false',
                 'node_use_etw': 'false',
                 'node_use_openssl': 'true',
                 'target_arch': 'ia32',
                 'v8_no_strict_aliasing': 1,
                 'v8_use_snapshot': 'true'}}
creating  ./config.gypi
creating  ./config.mk
make -C out BUILDTYPE=Release
make[1]: Entering directory `/root/node-v0.8.2/out'
g++    -c -o /root/node-v0.8.2/out/Release/obj.target/v8_snapshot/geni/snapshot.o /root/node-v0.8.2/out/Release/obj.target/v8_snapshot/geni/snapshot.cc
g++: /root/node-v0.8.2/out/Release/obj.target/v8_snapshot/geni/snapshot.cc: No such file or directory
g++: no input files
make[1]: *** [/root/node-v0.8.2/out/Release/obj.target/v8_snapshot/geni/snapshot.o] Error 1

Ben Noordhuis

未讀,
2012年7月11日 下午5:48:052012/7/11
收件者:nod...@googlegroups.com
It seems the overarching theme with your machine is that generating
code or post-processing object files somehow doesn't work (both
debug-support.o and snapshot.o are the result of actions that do
that).

What happens when you run configure with --without-snapshots?

Michael Smith

未讀,
2012年7月11日 下午6:46:452012/7/11
收件者:nod...@googlegroups.com
On Wednesday, July 11, 2012 2:48:05 PM UTC-7, Ben Noordhuis wrote:


It seems the overarching theme with your machine is that generating
code or post-processing object files somehow doesn't work (both
debug-support.o and snapshot.o are the result of actions that do
that).

What happens when you run configure with --without-snapshots?

Interesting. So, data point followed by dumb question: I'm able to compile 0.6.20 from source without problems. Is this consistent with the above hypothesis?

Trying --without-snapshot I get the following, which appears to work, but only trivially (nothing is compiled):

# ./configure --without-snapshot
{ 'target_defaults': { 'cflags': [],
                       'default_configuration': 'Release',
                       'defines': [],
                       'include_dirs': [],
                       'libraries': []},
  'variables': { 'host_arch': 'ia32',
                 'node_install_npm': 'true',
                 'node_install_waf': 'true',
                 'node_no_strict_aliasing': 1,
                 'node_prefix': '',
                 'node_shared_openssl': 'false',
                 'node_shared_v8': 'false',
                 'node_shared_zlib': 'false',
                 'node_use_dtrace': 'false',
                 'node_use_etw': 'false',
                 'node_use_openssl': 'true',
                 'target_arch': 'ia32',
                 'v8_no_strict_aliasing': 1,
                 'v8_use_snapshot': 'false'}}
creating  ./config.gypi
creating  ./config.mk
LDDORCFSL02:~/node-v0.8.2 # make
make -C out BUILDTYPE=Release
make[1]: Entering directory `/root/node-v0.8.2/out'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/root/node-v0.8.2/out'
ln -fs out/Release/node node

(note that "node" is a link to a file that doesn't exist.)

Thanks again,
Mike

Ben Noordhuis

未讀,
2012年7月11日 晚上7:17:262012/7/11
收件者:nod...@googlegroups.com
On Thu, Jul 12, 2012 at 12:46 AM, Michael Smith <max...@gmail.com> wrote:
> On Wednesday, July 11, 2012 2:48:05 PM UTC-7, Ben Noordhuis wrote:
>>
>> It seems the overarching theme with your machine is that generating
>> code or post-processing object files somehow doesn't work (both
>> debug-support.o and snapshot.o are the result of actions that do
>> that).
>>
>> What happens when you run configure with --without-snapshots?
>
>
> Interesting. So, data point followed by dumb question: I'm able to compile
> 0.6.20 from source without problems. Is this consistent with the above
> hypothesis?

Yes. The v0.6 releases use a different build system.
Mike, can you post the output of `make -v`? What happens when you
compile with `make BUILDTYPE=Debug`?

rhasson

未讀,
2012年7月12日 上午8:31:002012/7/12
收件者:nod...@googlegroups.com
did you run "make clean" before trying with --without-snapshots ?

I had a build problem (older g++ version) and it didn't compile v8.1. but compiles v8.2 great with the --without-snapshots flag.

Ben Noordhuis

未讀,
2012年7月17日 下午6:45:412012/7/17
收件者:nod...@googlegroups.com
On Wed, Jul 18, 2012 at 12:24 AM, Denis <gluc...@gmail.com> wrote:
> Hi Ben,
>
> I have the same issue - it builds on newer linux, but fails on the older
> one. Here is the info:
>
> This fails:
>
> make -v:
> GNU Make 3.80
>
> g++ -v
> gcc version 3.4.6 20060404 (Red Hat 3.4.6-11)
>
>
> This works:
>
> GNU Make 3.81
> gcc version 4.4.6 20120305 (Red Hat 4.4.6-4) (GCC)

You need at least make 3.81. I'll update the installation prerequisites.

gcc 3.4.x should technically work but I can't really guarantee it. I
made an effort to support it until recently(ish) because it's what old
Solaris systems ship with.

There was however no one but me actually using Solaris boxes that old,
so I dropped it. :-) Realistically speaking, you need at least gcc
4.2.0.
訊息已遭刪除

Zachary Fogg

未讀,
2012年7月17日 晚上11:42:392012/7/17
收件者:nod...@googlegroups.com

Hi, I posted a few replies back about the same problem.

I can confirm that installing Make 3.82 and using that resolved my issue. I can now compile and install Node.js v0.8.2 just fine.

Well, I could, but for some reason my CentOS install doesn't have a recent linux-utils package, so I don't have flock. Other than make complaining about that, it should compile a can't be 100% sure till I get flock on here somehow.


--
Job Board: http://jobs.nodejs.org/
Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to nod...@googlegroups.com
To unsubscribe from this group, send email to
nodejs+un...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

Peter Tribble

未讀,
2012年7月18日 凌晨4:11:532012/7/18
收件者:nod...@googlegroups.com
On Tue, Jul 17, 2012 at 11:45 PM, Ben Noordhuis <in...@bnoordhuis.nl> wrote:

> You need at least make 3.81. I'll update the installation prerequisites.
>
> gcc 3.4.x should technically work but I can't really guarantee it. I
> made an effort to support it until recently(ish) because it's what old
> Solaris systems ship with.
>
> There was however no one but me actually using Solaris boxes that old,
> so I dropped it. :-) Realistically speaking, you need at least gcc
> 4.2.0.

There are other people out there using Node on Solaris 10. I built
the 0.4 series with the old bundled gcc, but starting with 0.6 I use a
newer gcc (4.6.x) because that's so much easier.

For anyone else who wants prebuilt Solaris 10 packages for Node.js
(x86 only, not sparc) mine are available from here:

http://www.petertribble.co.uk/Solaris/node.html

--
-Peter Tribble
http://www.petertribble.co.uk/ - http://ptribble.blogspot.com/

Mindon Feng

未讀,
2012年7月18日 凌晨4:59:582012/7/18
收件者:nod...@googlegroups.com
Thanks Ben.

1. GNU make 3.8.1+
2. Python 2.6 or 2.7
3. setenv FLOCK or export FLOCK
    setenv LINK g++ or export LINK=g++

Then the "make" works.

Oleg Sadov

未讀,
2012年7月19日 凌晨4:53:282012/7/19
收件者:nod...@googlegroups.com
You may try to use our package for Scientific Linux 6x -- it must be
binary compatible with CentOS 6x:

http://downloads.naulinux.ru/pub/NauLinux/6rolling/testing/x86_64/nodejs/
http://downloads.naulinux.ru/pub/NauLinux/6rolling/testing/SRPMS/nodejs/

2012/7/18 Zachary Fogg <zach...@gmail.com>:
回覆所有人
回覆作者
轉寄
0 則新訊息