Closed GoogleCodeExporter closed 9 years ago
Hi there,
thanks for a bugreport. People usually join the Google groups in order to
discuss stuff; you can also meet me on #commonjs on freenode. I will mention
this somewhere in the docs.
Can you please try changing line #9 in SConstruct (if e["os"] == "windows":) by
substituting "windows" with "darwin"? I believe that this might solve your
compilation problems...
Original comment by ondrej.zara
on 19 Jan 2011 at 1:19
Thanks, that helped.
Now I have a problem with memcache. The log was too long for a comment, so I
attached in a text file.
memcache is installed, but there is no libmemcached/memcached.h
This is what is there:
$ ls /sw/include/memcache*
/sw/include/memcache.h
/sw/include/memcache:
_buffer.h buffer.h
scons -h has no memcache settings listed.
Regards,
Thorben
Original comment by tj.treve...@gmail.com
on 19 Jan 2011 at 4:30
Attachments:
If you do not wish to compile the memcached module, just add "memcached=0" to
the scons line.
Original comment by ondrej.zara
on 19 Jan 2011 at 5:14
I do wish to have it.
But from my interpretation, v8cgi is trying to #include
<libmemcached/libmemcached.h> when it should #include <memcached.h>, which does
exist on my system.
Or are these two different memcached libraries?
Original comment by tj.treve...@gmail.com
on 20 Jan 2011 at 8:09
More info..
$ fink apropos memcached
Information about 9654 packages read in 1 seconds.
i libmemcache 1.4.0.rc2-1 C API for building memcached clients
i libmemcache-shlibs 1.4.0.rc2-1 Library for building memcached clients
i memcached 1.2.8-1 High-performance object caching system
$ find /sw/include/ -iname \*memcache\*
/sw/include//apache2/apr_memcache.h
/sw/include//memcache
/sw/include//memcache.h
Are these not the correct packages?
Thanks for the help.
Thorben
Original comment by tj.treve...@gmail.com
on 20 Jan 2011 at 8:18
Hm, hard to say. The memcached module is a contributed code; I am not familiar
with it. On my debian/ubuntu box, installing "libmemcached-dev" was sufficient.
I do not own a mac box, so this module was not tested on mac osx.
Prehaps you can try adjusting the appropriate #include line in
src/lib/memcached/memcached.cc to better reflect your paths, but I strongly
believe that you are missing the correct package.
Original comment by ondrej.zara
on 20 Jan 2011 at 11:50
Ok,
I turned memcached off, just to get further through.
I number of things failed to build due to incov, or src/gc and src/system being
missing from the build config. I have attached my SConstruct so you can see the
changes.
I want the fcgi module and not the apache module. Now I am stuck at this error:
scons mysql=1 sqlite=1 fcgi=1 gd=1 reuse_context=1 v8_path=/sw/lib
cpppath=/sw/include\;/Users/jandling/Local/include
libpath=/sw/lib\;/Users/jandling/Local/lib/
config_file=/Users/jandling/Local/etc/v8cgi.conf mysql_path=/sw/include/mysql/
gl_path=/sw/include/GL/ memcached=0 module=0
scons: Reading SConscript files ...
Checking for C header file sys/mman.h... (cached) yes
Checking for C function sleep()... (cached) yes
Checking for C library v8... (cached) yes
scons: done reading SConscript files.
scons: Building targets ...
g++ -o v8cgi src/common.os src/system.os src/cache.os src/gc.os src/app.os
src/path.os src/lib/binary/bytestorage.os src/v8cgi.o -L/sw/lib -L/sw/lib
-L/Users/jandling/Local/lib -lv8 -lv8 -lfcgi -liconv
Undefined symbols:
"v8::Debug::EnableAgent(char const*, int, bool)", referenced from:
v8cgi_CGI::process_args(int, char**)in v8cgi.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
scons: *** [v8cgi] Error 1
scons: building terminated because of errors.
Original comment by tj.treve...@gmail.com
on 20 Jan 2011 at 12:44
Attachments:
I should say, that I tried with explicit debug=0 and verbose=0
Original comment by tj.treve...@gmail.com
on 20 Jan 2011 at 12:48
The "v8::Debug::EnableAgent" is defined in v8/include/v8-debug.h (this is not
affected by the "debug=0" scons option, which handles v8cgi debugging options;
this is a standard v8 feature). It looks like your v8 library is missing this
symbol... it might be easier for you to compile v8 yourself.
Alternatively, scan the packaged v8 library for this symbol; if you do not
succeed, report it as a bug to library packager.
Original comment by ondrej.zara
on 20 Jan 2011 at 2:41
@Thorben You need libmemcached, not memcached!
Original comment by christ...@christophdorn.com
on 28 Sep 2011 at 7:35
I am getting the following error using OSX Lion:
g++ -o v8cgi src/common.os src/system.os src/cache.os src/gc.os src/app.os
src/path.os src/lib/binary/bytestorage.os src/v8cgi.o
-L/pinf/workspaces/github.com/pinf/loader-js/demos/V8CGI/v8cgi-0.9.1-src/v8
-lv8 -lv8
Undefined symbols for architecture x86_64:
"_iconv_open", referenced from:
ByteStorage::transcode(char const*, char const*)in bytestorage.os
"_iconv_close", referenced from:
ByteStorage::transcode(char const*, char const*)in bytestorage.os
"_iconv", referenced from:
ByteStorage::transcode(char const*, char const*)in bytestorage.os
ld: symbol(s) not found for architecture x86_64
Looks like it needs a different iconv that what ships with OSX Lion.
Original comment by christ...@christophdorn.com
on 28 Sep 2011 at 7:44
The iconv-related issue seems to be caused by bad SConstruct definition; will
be hopefully fixed soon.
Original comment by ondrej.zara
on 28 Sep 2011 at 8:39
To fix this (Comment 11) I did:
brew install libiconv
Edit SConstruct line 242 by adding 'or env["os"] == "darwin"'
Then run:
scons libpath=/usr/local/Cellar/libiconv/1.13.1/include
The SConstruct fix should be comitted soon.
Original comment by christ...@christophdorn.com
on 28 Sep 2011 at 8:42
Commited in r922.
Original comment by ondrej.zara
on 28 Sep 2011 at 8:44
Probably fixed :)
Original comment by ondrej.zara
on 14 Dec 2011 at 1:27
Original issue reported on code.google.com by
tj.treve...@gmail.com
on 19 Jan 2011 at 12:56