View previous topic :: View next topic |
Author |
Message |
Zaith
Joined: 05 Jun 2007 Posts: 21
|
Posted: Tue Jun 05, 2007 2:53 Post subject: ODMBC Help |
|
|
Here is my nwnx2.txt log file.
Code: | NWN Extender v2.5.3-rc1
MNX plugin Registerred.
ERROR: dlopen: ./nwnx_odbc.so: libmysqlclient.so.12: cannot open shared object file: No such file or directory
HASHSET plugin Registerred.
FUNCTIONS plugin Registerred.
* NWNX2 activated.
INIT: valid ret=0x0820149c
* Library ODBC!SPACER does not exist.
|
I am totally lost. I added the nwnx_odbc.so file from odmbc v0.3. I swapped it for the old nwnx_odbc.so file (Yes, I backed up the old one).
Can someone tell me what I did wrong? I'm pretty new to Linux. My wife and I put this box together to learn it, and a friend of mine asked me to host his module since he lost his hosting and I have hosted other modules before (Even though they were on a windows machine).
I need persistent objects, which is why I'm trying to use this. His module already has a persistent chest system designed for MySQL and I don't want to rewrite it.
If someone could point me in the right direction I would be greatly appreciated.
Thanks, Z |
|
Back to top |
|
|
virusman
Joined: 30 Jan 2005 Posts: 1020 Location: Russia
|
Posted: Tue Jun 05, 2007 7:26 Post subject: |
|
|
You need to recompile odbc2 (odmbc) from sources. |
|
Back to top |
|
|
Zaith
Joined: 05 Jun 2007 Posts: 21
|
Posted: Wed Jun 06, 2007 1:57 Post subject: |
|
|
Here is what it says when I compile NWNX2 with the command
Code: | ./configure --prefix=/home/jones/nwserver --with-extraplugins="odmbc" |
Code: |
checking for gcc... gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for executable suffix...
checking for object suffix... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking for fcntl.h... yes
checking for netinet/in.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for sys/ioctl.h... yes
checking for sys/mman.h... yes
checking for sys/socket.h... yes
checking for sys/time.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for gcc option to accept ANSI C... none needed
checking for an ANSI C-conforming const... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... (cached) yes
checking for size_t... yes
checking for stdlib.h... (cached) yes
checking for working malloc... yes
checking for bzero... yes
checking for getspnam... yes
checking for inflateEnd in -lz... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating db/Makefile
config.status: creating mnx/Makefile
config.status: creating functions/Makefile
config.status: creating hashset/Makefile
config.status: creating odmbc/Makefile
config.status: error: cannot find input file: odmbc/Makefile.in
|
So I renamed the Makefile that is there, to Makefile.in, and tried again. This was the results.
Code: |
checking for gcc... gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for executable suffix...
checking for object suffix... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking for fcntl.h... yes
checking for netinet/in.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for sys/ioctl.h... yes
checking for sys/mman.h... yes
checking for sys/socket.h... yes
checking for sys/time.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for gcc option to accept ANSI C... none needed
checking for an ANSI C-conforming const... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... (cached) yes
checking for size_t... yes
checking for stdlib.h... (cached) yes
checking for working malloc... yes
checking for bzero... yes
checking for getspnam... yes
checking for inflateEnd in -lz... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating db/Makefile
config.status: creating mnx/Makefile
config.status: creating functions/Makefile
config.status: creating hashset/Makefile
config.status: creating odmbc/Makefile
config.status: creating config.h
config.status: config.h is unchanged
|
So far so good. Now onto 'make install'..
Code: |
make -C db
make[1]: Entering directory `/home/jones/nwserver/linnwnx2/db'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/jones/nwserver/linnwnx2/db'
make -C mnx
make[1]: Entering directory `/home/jones/nwserver/linnwnx2/mnx'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/jones/nwserver/linnwnx2/mnx'
make -C functions
make[1]: Entering directory `/home/jones/nwserver/linnwnx2/functions'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/jones/nwserver/linnwnx2/functions'
make -C hashset
make[1]: Entering directory `/home/jones/nwserver/linnwnx2/hashset'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/jones/nwserver/linnwnx2/hashset'
make -C odmbc
make[1]: Entering directory `/home/jones/nwserver/linnwnx2/odmbc'
g++ -mcpu=i386 -I.. -c -o HookSCORCO.o HookSCORCO.cpp
`-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead.
NWNXodmbc.h:39: error: extra qualification âCNWNXodmbc::â on member âWriteSCOâ
NWNXodmbc.h:40: error: extra qualification âCNWNXodmbc::â on member âReadSCOâ
make[1]: *** [HookSCORCO.o] Error 1
make[1]: Leaving directory `/home/jones/nwserver/linnwnx2/odmbc'
make: *** [odmbc] Error 2
|
Ok, what am I doing wrong?
I've also tried moving all the files from the odmbc directory into the db directory, and doing it all over again. Always the same errors.
Am I missing something extremely obvious? |
|
Back to top |
|
|
Zaith
Joined: 05 Jun 2007 Posts: 21
|
Posted: Thu Jun 07, 2007 2:52 Post subject: |
|
|
I fixed the problem. I had to edit the source code a bit.
If anyone cares, I would be more than willing to explain what I did. |
|
Back to top |
|
|
|