It looks like you are requiring "forge.node" but in your wscript you have
"planetforge". Those two values must match.

On Wed, Feb 29, 2012 at 5:54 PM, Scott Straley <[email protected]>wrote:

> Hi,
>
> I've gotten a little further.  This will now configure and compile, but
> I'm getting an error "Error: Unable to load shared
> library /node/site/src/forge/build/Release/forge.node".  Here's my new
> wscript:
>
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~**~~~~~~~~~~~
>
> def set_options(opt):
>   opt.tool_options("compiler_cxx")
>
> def configure(conf):
>   conf.check_tool("compiler_cxx")
>   conf.check_tool("node_addon")
>   conf.check_cfg(package='libpng', args='--cflags --libs',
> atleast_version="1.5.0", uselib_store='LIBPNG')
>
> def build(bld):
>   obj = bld.new_task_gen("cxx", "shlib", "node_addon")
>   obj.uselib = ['LIBPNG']
>   obj.cxxflags = ["-g", "-D_FILE_OFFSET_BITS=64", "-D_LARGEFILE_SOURCE",
> "-Wall"]
>   obj.target = "planetforge"
>   obj.source = "planetforge.cc"
>   #obj.source = "hello.cc"
>
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~**~~~~~~~~~~~
>
> ~ Scott
>
>
>
>
> On Wednesday, February 29, 2012 3:35:15 PM UTC-5, Scott Straley wrote:
>>
>> Hi,
>>
>> I'm trying to build a module with node-waf, and it's not seeing
>> libpng.  I started with the default ubuntu libpng12, then downloaded
>> and compiled and installed libpng15.  Neither work.  I've been running
>> around in circles trying to reconfigure wscript, but nada.  My wscript
>> looks like:
>>
>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~**~~~~~~~~~~~
>>
>> import Options
>> from os import unlink, symlink, popen
>> from os.path import exists
>>
>> srcdir = "."
>> blddir = "build"
>> VERSION = "0.0.1"
>>
>> def set_options(opt):
>>   opt.tool_options("compiler_**cxx")
>>
>> def configure(conf):
>>   conf.check_tool("compiler_cxx"**)
>>   conf.check_tool("node_addon")
>>   conf.check(lib='png', libpath=['/lib', '/usr/lib', '/usr/local/lib',
>> '/usr/local/libpng/lib', '/home/straley/downloads/**libpng-1.5.9'])
>>
>>
>> def build(bld):
>>   obj = bld.new_task_gen("cxx", "shlib", "node_addon")
>>   obj.target = "forge"
>>   obj.source = "forge.cc"
>>   obj.uselib = "PNG"
>>   obj.cxxflags = ["-D_FILE_OFFSET_BITS=64", "-D_LARGEFILE_SOURCE"]
>>
>> def shutdown():
>>   if Options.commands['clean']:
>>     if exists('planetforge.node'): unlink('planetforge.node')
>>   if exists('build/Release/**planetforge.node') and not
>> exists('planetforge.node'):
>>     symlink('build/Release/**planetforge.node', 'planetforge.node')
>>
>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~**~~~~~~~~~~~
>>
>> when I run node-waf configure, I get:
>>
>> Checking for program g++ or c++          : /usr/bin/g++
>> Checking for program cpp                 : /usr/bin/cpp
>> Checking for program ar                  : /usr/bin/ar
>> Checking for program ranlib              : /usr/bin/ranlib
>> Checking for g++                         : ok
>> Checking for node path                   : ok /usr/bin/node
>> Checking for node prefix                 : ok /usr
>> Checking for library png                 : not found
>>
>> With the -vvv option, the snippet near the "library png" line, looks
>> like:
>>
>> 12:25:19 build Build cache loading failed
>> 12:25:19 build srcnode is .conf_check_0 and srcdir /node/site/src/
>> forge/build/.conf_check_0
>> 12:25:19 build init variants
>> 12:25:19 build list of variants is ['Release']
>> 12:25:19 build compile called
>> 12:25:19 build delayed operation TaskGen.flush() called
>> 12:25:19 task_gen posting objects (normal)
>> 12:25:19 group group None
>> 12:25:19 group <task_gen 'testprog' of type task_gen defined in
>> dir:///node/site/src/forge/**build/.conf_check_0>
>> 12:25:19 task_gen posting <task_gen 'testprog' of type task_gen
>> defined in dir:///node/site/src/forge/**build/.conf_check_0> 453397520
>> 12:25:19 task_gen -> apply_verif (453397520)
>> 12:25:19 task_gen -> exec_rule (453397520)
>> 12:25:19 task_gen -> default_cc (453397520)
>> 12:25:19 task_gen -> vars_target_cprogram (453397520)
>> 12:25:19 task_gen -> apply_core (453397520)
>> 12:25:19 task_gen -> apply_link (453397520)
>> 12:25:19 task_gen -> default_link_install (453397520)
>> 12:25:19 task_gen -> add_extra_flags (453397520)
>> 12:25:19 task_gen -> init_cxx (453397520)
>> 12:25:19 task_gen -> apply_type_vars (453397520)
>> 12:25:19 task_gen -> apply_lib_vars (453397520)
>> 12:25:19 task_gen -> apply_incpaths (453397520)
>> 12:25:19 task_gen -> apply_obj_vars_cxx (453397520)
>> 12:25:19 task_gen -> apply_defines_cxx (453397520)
>> 12:25:19 task_gen -> apply_obj_vars (453397520)
>> 12:25:19 task_gen -> apply_objdeps (453397520)
>> 12:25:19 task_gen posted testprog
>> 12:25:19 build executor starting
>> 12:25:19 envhash '\x00\x85\xf8\x02\xb2Z4\x9d\**x8e\x977\xb4.\xc2<
>> \xcd' ["['/usr/bin/g++']", "['-g']", '[]', '[]', '[]', '', "['-c', '-
>> o', '']", '[]']
>> 12:25:19 ccroot _scan_preprocessor(self, node, env, path_lst)
>> 12:25:19 preproc scanning test.cpp (in .conf_check_0)
>> 12:25:19 preproc reading file '/node/site/src/forge/
>> build/.conf_check_0/test.cpp'
>>
>> 12:25:19 preproc reading file '/node/site/src/forge/
>> build/.conf_check_0/test.cpp'
>> 12:25:19 deps deps for 
>> src:///node/site/src/forge/**build/.conf_check_0/test.cpp:
>>
>> []; unresolved []
>> 12:25:19 deps scanner for cxx: build/.conf_check_0/test.cpp ->
>> build/.conf_check_0/testbuild/**Release/test_1.o
>>  returned [] []
>> 12:25:19 task task
>>         {task: cxx test.cpp -> test_1.o} must run as it was never run
>> before or the task code changed
>> 12:25:19 runner system command -> ['/usr/bin/g++', '-g', '../
>> test.cpp', '-c', '-o', 'Release/test_1.o']
>> 12:25:19 envhash '\x8f?\xc3\x16\\1\xf3A\x87\**xbe\xc5\xde\xceA
>> \xeb!' ["['/usr/bin/g++']", '', "['-o', '']", "['-L/lib', '-L/usr/
>> lib', '-L/usr/local/lib', '-L/usr/local/libpng/lib', '-L/home/straley/
>> downloads/libpng-1.5.9', '-Wl,-Bdynamic', '-lpng']"]
>> 12:25:19 task task
>>         {task: cxx_link test_1.o -> testprog} must run as it was never
>> run before or the task code changed
>> 12:25:19 runner system command -> ['/usr/bin/g++', 'Release/test_1.o',
>> '-o', '/node/site/src/forge/build/.**conf_check_0/testbuild/**Release/
>> testprog', '-L/lib', '-L/usr/lib', '-L/usr/local/lib', '-L/usr/local/
>> libpng/lib', '-L/home/straley/downloads/**libpng-1.5.9', '-Wl,-
>> Bdynamic', '-lpng']
>>
>> Running libpng-config with the following flags, yields me:
>>
>> --prefix : /usr/local
>> --libdir: /usr/local
>> --libs: -lpng15
>> --cflags: -I/usr/local/include/libpng15
>> --I_opts: -I/usr/local/include/libpng15
>> --L_opts: -L/usr/local/lib
>> --ldflags: -L/usr/local/lib -lpng15
>>
>> /usr/local/include/libpng15 has:
>>
>> -rw-r--r-- 1 root root 115248 Feb 29 10:16 png.h
>> -rw-r--r-- 1 root root  21354 Feb 29 10:16 pngconf.h
>> -rw-r--r-- 1 root root   6033 Feb 29 10:16 pnglibconf.h
>>
>> /usr/local/lib has:
>>
>> lrwxrwxrwx 1 root root       10 Feb 29 10:16 libpng.a -> libpng15.a
>> lrwxrwxrwx 1 root root       11 Feb 29 10:16 libpng.la -> libpng15.la
>> lrwxrwxrwx 1 root root       11 Feb 29 10:16 libpng.so -> libpng15.so
>> -rw-r--r-- 1 root root  1041456 Feb 29 10:16 libpng15.a
>> -rwxr-xr-x 1 root root      936 Feb 29 10:16 libpng15.la
>> lrwxrwxrwx 1 root root       18 Feb 29 10:16 libpng15.so ->
>> libpng15.so.15.9.0
>> lrwxrwxrwx 1 root root       18 Feb 29 10:16 libpng15.so.15 ->
>> libpng15.so.15.9.0
>> -rwxr-xr-x 1 root root   601026 Feb 29 10:16 libpng15.so.15.9.0
>>
>> And, in my forge.cc file, I'm attempting to include libpng with:
>>
>> #include <png.h>
>>
>> So... I think that's all the relevant info.  If anyone has any ideas,
>> I'd greatly appreciate it.  I've been chasing ghosts for two days on
>> this.
>>
>> Thanks,
>> Scott
>>
>>
>>  --
> 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 [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/nodejs?hl=en?hl=en
>

-- 
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 [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

Reply via email to