logo logo

 Back to main page

The NWNX Community Forum

 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 
 
1.69 Crash after load - std::length_error
Goto page 1, 2, 3, 4  Next
 
Post new topic   Reply to topic    nwnx.org Forum Index -> Linux development
View previous topic :: View next topic  
Author Message
weldieran



Joined: 05 Aug 2005
Posts: 71

PostPosted: Wed Aug 06, 2008 3:53    Post subject: 1.69 Crash after load - std::length_error Reply with quote

So I'm trying to get updated to 1.69 now. Have downloaded the nwnx_easy file and successfully compiled everything. This was after downloading the proper files from virusman's thread and trying those too. Both with same results.


Quote:
NWNX2lib: Init
NWNX2lib: org SetString() at 0x81f41b4, new SetString() at 0x11de84
NWNX2lib: org GetObj() at 0x81f40bc, new GetObj() at 0x11d808
* Parsing configuration...
NWN Extender v2.7-beta4
(c) 2004 by the APS/NWNX Linux Conversion Group
(c) 2007-2008 by virusman
Based on the Win32 version (c) 2003 by Ingmar Stieger (Papillon)
and Jeroen Broekhuizen
visit us at http://www.avlis.org

* Loading modules...
FIXES plugin Registered.
FUNCTIONS plugin Registered.
CHAT plugin Registered.
LETO plugin Registered.
TMI plugin Registered.
STRUCTS plugin Registered.
RESMAN plugin Registered.
ODBC plugin Registered.
HASHSET plugin Registered.
PROFILER plugin Registered.
MNX plugin Registered.
EVENTS plugin Registered.
* NWNX2 activated.
Neverwinter Nights Server
Build:8109
Copyright BioWare Corp 1998-2004

Server: Loading...
Server: Running...

Server: Loading module "moduletest"........................................[snip]
Server: Module loaded
INIT(S): valid ret=0x082041ec
terminate called after throwing an instance of 'std::length_error'
what(): basic_string::_S_create




I believe the issue to be nwnx_hashset.so, the hashset plugin. I have also noticed that virusman has not noted any updates to that plugin at all, it seems to be one left by the wayside Rolling Eyes go figure I'd use it!

When I remove nwnx_hashset.so, the crash issue ceases.


So, anyone have any thoughts here? Razz
Back to top
View user's profile Send private message
acaos



Joined: 08 May 2007
Posts: 153

PostPosted: Wed Aug 06, 2008 7:57    Post subject: Reply with quote

I've already committed a fix to this, which can be found in the Subversion repository. It's a buffer overrun.

Acaos
Back to top
View user's profile Send private message
weldieran



Joined: 05 Aug 2005
Posts: 71

PostPosted: Wed Aug 06, 2008 15:38    Post subject: Reply with quote

acaos wrote:
I've already committed a fix to this, which can be found in the Subversion repository. It's a buffer overrun.

Acaos


Forgive my ignorance Embarassed, but I do not know where this subversion repository is. I've searched these forums for it, I've even read every single one of your posts to find hint of it, but to no avail.

Is the buffer overrun an issue of hashset then? Can I get some direct info on fixing this? A file would be great, but if you know which lines in which file need changed, I can do that too and recompile.

Thanks Acaos!
Back to top
View user's profile Send private message
virusman



Joined: 30 Jan 2005
Posts: 1020
Location: Russia

PostPosted: Wed Aug 06, 2008 16:54    Post subject: Reply with quote

There is a topic called "SVN Repository" in Linux dev forums. You can use any SVN client to browse and checkout from this repository.
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger
weldieran



Joined: 05 Aug 2005
Posts: 71

PostPosted: Wed Aug 06, 2008 17:46    Post subject: Reply with quote

Thanks Smile I did notice that topic before, but since I'm not saavy on "SVN", wasn't sure what to do with it.

Did some reading up, browsed the repository just fine. But still don't really have an answer here. Its probably obvious to you guys, but I need something a little more precise in instruction.

I did find a folder by acaos. Seemed to contain the entire nwnx and all plugins? Do i need to download all of that and recompile all of those or should I instead be focusing on one particular plugin or the core or what.

I did download the hashset files and diffed them all from the source I used, they are exactly the same, so I guess this buffer issue is not with the hashset plugin.

help? Embarassed


[edit]
so i tried downloading all of acaos folder and attempted to compile, but it seems to be incomplete. Perhaps these are just files that are supposed to replace the files I got with nwnx_easy?
Back to top
View user's profile Send private message
virusman



Joined: 30 Jan 2005
Posts: 1020
Location: Russia

PostPosted: Wed Aug 06, 2008 18:34    Post subject: Reply with quote

Download the trunk and compile it.
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger
weldieran



Joined: 05 Aug 2005
Posts: 71

PostPosted: Wed Aug 06, 2008 19:42    Post subject: Reply with quote

virusman wrote:
Download the trunk and compile it.


easy for you to say Razz

Quote:

# ./configure --with-extraplugins="chat events fixes leto odmbc profiler resman structs tmi"
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
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 egrep... grep -E
checking for ANSI C header files... yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... 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... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking netinet/in.h usability... yes
checking netinet/in.h presence... yes
checking for netinet/in.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/mman.h usability... yes
checking sys/mman.h presence... yes
checking for sys/mman.h... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for an ANSI C-conforming const... yes
checking for size_t... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible 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 plugins/chat/Makefile
config.status: creating plugins/db/Makefile
config.status: creating plugins/events/Makefile
config.status: creating plugins/fixes/Makefile
config.status: creating plugins/functions/Makefile
config.status: creating plugins/hashset/Makefile
config.status: creating plugins/mnx/Makefile
config.status: creating plugins/odmbc/Makefile
config.status: creating plugins/profiler/Makefile
config.status: creating plugins/reset/Makefile
config.status: creating plugins/resman/Makefile
config.status: creating plugins/ruby/Makefile
config.status: creating plugins/structs/Makefile
config.status: creating plugins/tmi/Makefile
config.status: error: cannot find input file: chat/Makefile.in



Odd, because it knows where the plugs are at first, but then suddenly, forgets about the plugins directory. hmm

install.sh is not functional either
Back to top
View user's profile Send private message
acaos



Joined: 08 May 2007
Posts: 153

PostPosted: Thu Aug 07, 2008 9:48    Post subject: Reply with quote

Did you do that configure on a completely fresh checkout? I just did one and had no issues.

Acaos
Back to top
View user's profile Send private message
weldieran



Joined: 05 Aug 2005
Posts: 71

PostPosted: Thu Aug 07, 2008 15:54    Post subject: Reply with quote

"Fresh checkout" ... hmm, I'd imagine there's some deeper meaning to that other than "wget -R -np" on the trunk directory hehe

I just surfed the web links and nabbed all files via wget... i'd imagine that was the problem.

Anyway, I'm not really sure we're talking about the same issue here. I have a fresh copy of nwnx, nabbed from nwnx_easy. It compiled great, but caused the buffer error.

When I compare the nwnx_easy hashset files to the hashset files in the repository, i see they are identical.

So instead, I replaced the nwnx_easy hashset plugin with my own compiled plugin that is currently in live, and no more crash.

And as I was doing that, it finally dawned on me that we had customized our copy of nwnx as it was lacking in certain functions that sped everything up on the nwscript side.

The three changes I can remember were done to the old mysql db plugin:
1. GETCOLUMN
2. SQLENCODESPECIALCHARS
3. SQLDECODESPECIALCHARS


If I recall, these were all handled inside nwscript, which as I'm sure you guys know, was very very inefficient due to the lack of string handling in nwscript. We put these into the plugin to improve performance.

Also made some performance changes to Hashset, but I can't quite recall yet what. We're sifting through our old source files now to figure all this out.

Any thoughts?
Back to top
View user's profile Send private message
acaos



Joined: 08 May 2007
Posts: 153

PostPosted: Thu Aug 07, 2008 16:31    Post subject: Reply with quote

weldieran wrote:
"Fresh checkout" ... hmm, I'd imagine there's some deeper meaning to that other than "wget -R -np" on the trunk directory hehe


Yeah, I meant using the Subversion client to check it out, by doing 'svn co http://nwn.virusman.ru/svn/nwnx2-linux'.

Quote:
Anyway, I'm not really sure we're talking about the same issue here. I have a fresh copy of nwnx, nabbed from nwnx_easy. It compiled great, but caused the buffer error.

When I compare the nwnx_easy hashset files to the hashset files in the repository, i see they are identical.


That's interesting. They shouldn't be, unless the nwnx_easy author already integrated the fix:

Code:
Index: plugins/hashset/NWNXHashSet.cpp
===================================================================
--- plugins/hashset/NWNXHashSet.cpp     (.../hashset)   (revision 50)
+++ plugins/hashset/NWNXHashSet.cpp     (.../plugins/hashset)   (revision 75)
@@ -130,7 +130,7 @@
 {
        unsigned long iGameObjectId = *(unsigned long*)(gameObj+4);
        string setname;
-       char *pSep, oid[9];
+       char *pSep, oid[10];

        // assume the worst
        iLastOperation = false;


Quote:
Also made some performance changes to Hashset, but I can't quite recall yet what. We're sifting through our old source files now to figure all this out.

Any thoughts?


Performance changes are good. If you have that code lying around, I'd be glad to try integrating it into the trunk.

Acaos
Back to top
View user's profile Send private message
weldieran



Joined: 05 Aug 2005
Posts: 71

PostPosted: Thu Aug 07, 2008 18:49    Post subject: Reply with quote

Ahh, ok, I've never used svn before Smile

Yes, they were identical, diff gave no results.


I'm digging around code now, seeing a lot of changes between my live nwnx and this new version. Unfortunately, our code doesn't seem to be quite compatible yet, but the concept is simple, something like this:

Code:

char* CNWNXodmbc::OnRequest (char* gameObject, char* Request, char* Parameters)
{
   if (strncmp (Request, "EXEC", 4) == 0)
      Execute(Parameters);
   else if (strncmp (Request, "FETCH", 5) == 0)
      Fetch (Parameters, strlen (Parameters));
   else if (strncmp(Request, "SETSCORCOSQL", 12) == 0)
      SetScorcoSQL(Parameters);
// Start Modifications - 01/06/06 - AJF - Add GET COLUMN option to ODBC
        else
        if(strncasecmp(Request,"GETCOLUMN!",10)==0) {
                Log(4,"GetColumn:  Req: %s  Par: %s\n",Request, Parameters);
                db->GetColumn(Request,Parameters,strlen(Parameters));
        }
// End Modifications - 01/06/06 - AJF
// Start Modifications - 01/12/06 - AJF
        else
        if(strncasecmp(Request,"SQLENCODESPECIALCHARS",21)==0) {
                Log(4,"SQLEncodeSpecialChars:  Req: %s  Par: %s\n",Request, Parameters);
                db->SQLEncodeSpecialChars(Request,Parameters,strlen(Parameters));
        }
        else
        if(strncasecmp(Request,"SQLDECODESPECIALCHARS",21)==0) {
                Log(4,"SQLDecodeSpecialChars:  Req: %s  Par: %s\n",Request, Parameters);
                db->SQLDecodeSpecialChars(Request,Parameters,strlen(Parameters));
        }
// End Modifications - 01/12/06 - AJF

   return NULL;
}


Code:

    virtual unsigned int GetColumn (char *request, char *buffer, unsigned int buffersize) = 0;   
    virtual unsigned int SQLEncodeSpecialChars (char *request, char *buffer, unsigned int buffersize) = 0;   
    virtual unsigned int SQLDecodeSpecialChars (char *request, char *buffer, unsigned int buffersize) = 0;   


Code:

unsigned int
DbMySql::GetColumn (char *request, char *buffer, unsigned int buffersize)
{

        char* parse_request = &request[10]; // Get Next parameters
        int column = 0;
        int i,x;
        char temp_buffer[3072];
        char *start_pos;

        strncpy(temp_buffer,buffer,buffersize+1);
        buffer[0] = '\0';  //Initialize Return Buffer

        column = atoi(parse_request);
        if ( ! column ) {
                return 0;
        }

   strcat (temp_buffer, "¬");   // ascii 170

   i=1;
        x=0;

        start_pos = temp_buffer;
        while (temp_buffer[x] != '\0') {
           if (temp_buffer[x] == '¬' ) {
              temp_buffer[x] = '\0';
              if (i == column) {
                 break;
              } else {
                 start_pos = &temp_buffer[x+1];
                 i++;
              }
           }
           x++;
        }

   strcpy(buffer,start_pos);

   return 1;
}


unsigned int
DbMySql::SQLEncodeSpecialChars (char *request, char *buffer, unsigned int buffersize)
//Routine will deplicate the internal NWscript function and replace
// a ' with ~
{

        int i;

   for (i=0; i<buffersize ; i++)
        {
           if (buffer[i] = '\'' )
           {  buffer[i] = '~'; }
        }

   return 1;
}

unsigned int
DbMySql::SQLDecodeSpecialChars (char *request, char *buffer, unsigned int buffersize)
//Routine will deplicate the internal NWscript function and replace
// a ~ with a '
{

        int i;

        for (i=0; i<buffersize ; i++)
        {
           if (buffer[i] = '~' )
           {  buffer[i] = '\''; }
        }

        return 1;
}



As you can see, pretty simple idea. NWScript leaves much to be desired in ways of data manipulation, so best to handle as much as possible with nwnx.
Back to top
View user's profile Send private message
weldieran



Joined: 05 Aug 2005
Posts: 71

PostPosted: Fri Aug 08, 2008 2:48    Post subject: Reply with quote

yikes, well, still haven't successfully reimplemented this code to the latest nwnx.

I've got it successfully compiling sure, but things just don't work right heh. Hashset is freaking out and plenty of "mysql has gone away" issues (on tiny simple queries too).

Any chance one of you guys can integrate these functions? It'd take me a week to learn how this version of nwnx is sewn together in order to port those functions ~ I'm not too saavy with C

whatcha think?
Back to top
View user's profile Send private message
acaos



Joined: 08 May 2007
Posts: 153

PostPosted: Fri Aug 08, 2008 2:52    Post subject: Reply with quote

It's on my todo list now - I'm just busy breaking NWNeXalt into plugins (like the new nwnx_weapons one) and making those more configurable for PW admins.

Acaos
Back to top
View user's profile Send private message
weldieran



Joined: 05 Aug 2005
Posts: 71

PostPosted: Fri Aug 08, 2008 19:44    Post subject: Reply with quote

acaos wrote:
It's on my todo list now - I'm just busy breaking NWNeXalt into plugins (like the new nwnx_weapons one) and making those more configurable for PW admins.

Acaos


Sweet - really appreciate it. I'm having a hard time getting the code modified to fit the new nwnx, especially because I do not know which bugs are the bugs I created due to faulty integration and which are 1.69 related issues.

i'd even be happy to paypal ya some cash to get it done Smile
Back to top
View user's profile Send private message
weldieran



Joined: 05 Aug 2005
Posts: 71

PostPosted: Fri Aug 08, 2008 21:30    Post subject: Reply with quote

acaos wrote:
Did you do that configure on a completely fresh checkout? I just did one and had no issues.

Acaos


OK - Just tried a fresh checkout using the method you described, same problems as before. Here's what I did:

Quote:

# svn co http://nwn.virusman.ru/svn/nwnx2-linux

A nwnx2-linux/trunk
A nwnx2-linux/trunk/install.sh
A nwnx2-linux/trunk/gline.cpp
A nwnx2-linux/trunk/licence.txt
A nwnx2-linux/trunk/configure
A nwnx2-linux/trunk/plugins
A nwnx2-linux/trunk/plugins/chat
A nwnx2-linux/trunk/plugins/chat/NWNXChat.h
A nwnx2-linux/trunk/plugins/chat/HookChat.cpp
A nwnx2-linux/trunk/plugins/chat/Makefile.in
A nwnx2-linux/trunk/plugins/chat/nwn
[snip]... all files downloading ...[/snip]
Checked out revision 86.

# cd nwnx2-linux/trunk
# chmod 700 configure
# chmod 700 install.sh
# mkdir compiled [i](if this is not created, install.sh fails)
# ./install.sh


./install.sh: line 7: [: !=: unary operator expected
./install.sh: line 10: [: !=: unary operator expected

checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
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 egrep... grep -E
checking for ANSI C header files... yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... 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... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking netinet/in.h usability... yes
checking netinet/in.h presence... yes
checking for netinet/in.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/mman.h usability... yes
checking sys/mman.h presence... yes
checking for sys/mman.h... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for an ANSI C-conforming const... yes
checking for size_t... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible 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 plugins/chat/Makefile
config.status: creating plugins/db/Makefile
config.status: creating plugins/events/Makefile
config.status: creating plugins/fixes/Makefile
config.status: creating plugins/functions/Makefile
config.status: creating plugins/hashset/Makefile
config.status: creating plugins/mnx/Makefile
config.status: creating plugins/odmbc/Makefile
config.status: creating plugins/profiler/Makefile
config.status: creating plugins/reset/Makefile
config.status: creating plugins/resman/Makefile
config.status: creating plugins/ruby/Makefile
config.status: creating plugins/structs/Makefile
config.status: creating plugins/tmi/Makefile
config.status: error: cannot find input file: chat/Makefile.in
g++ -mtune=i386 -Iinclude -DHAVE_CONFIG_H -c -o nwnx2lib.o nwnx2lib.cpp
nwnx2lib.cpp:37:20: error: config.h: No such file or directory
make: *** [nwnx2lib.o] Error 1
mv: cannot stat `./nwnx2.so': No such file or directory
mv: cannot stat `./chat/nwnx_chat.so': No such file or directory
mv: cannot stat `./events/nwnx_events.so': No such file or directory
mv: cannot stat `./fixes/nwnx_fixes.so': No such file or directory
mv: cannot stat `./functions/nwnx_functions.so': No such file or directory
mv: cannot stat `./hashset/nwnx_hashset.so': No such file or directory
mv: cannot stat `./leto/nwnx_leto.so': No such file or directory
mv: cannot stat `./mnx/nwnx_mnx.so': No such file or directory
mv: cannot stat `./odmbc/nwnx_odbc.so': No such file or directory
mv: cannot stat `./profiler/nwnx_profiler.so': No such file or directory
mv: cannot stat `./resman/nwnx_resman.so': No such file or directory
mv: cannot stat `./structs/nwnx_structs.so': No such file or directory
mv: cannot stat `./tmi/nwnx_tmi.so': No such file or directory

for i in plugins/chat plugins/db plugins/events plugins/fixes plugins/functions plugins/hashset plugins/mnx plugins/odmbc plugins/profiler plugins/reset plugins/resman plugins/structs plugins/tmi plugins/weapons chat events fixes leto odmbc profiler resman structs tmi; do make -C $i clean; done
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/chat'
/bin/rm -f *.o *.so *~
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/chat'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/db'
/bin/rm -f *.o *.so *~
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/db'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/events'
/bin/rm -f *.o *.so *~
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/events'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/fixes'
/bin/rm -f *.o *.so *~
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/fixes'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/functions'
/bin/rm -f *.o *.so *~
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/functions'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/hashset'
/bin/rm -f *.o *.so *~
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/hashset'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/mnx'
/bin/rm -f *.o *.so *~
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/mnx'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/odmbc'
/bin/rm -f *.o *.so *~
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/odmbc'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/profiler'
/bin/rm -f *.o *.so *~
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/profiler'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/reset'
/bin/rm -f *.o *.so *~
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/reset'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/resman'
/bin/rm -f *.o *.so *~
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/resman'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/structs'
/bin/rm -f *.o *.so *~
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/structs'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/tmi'
/bin/rm -f *.o *.so *~
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/tmi'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/weapons'
/bin/rm -f *.o *.so funcs/*.o hooks/*.o tables/*.o
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/weapons'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/chat'
make[1]: *** No rule to make target `clean'. Stop.
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/chat'
make: *** events: No such file or directory. Stop.
make: *** fixes: No such file or directory. Stop.
make: *** leto: No such file or directory. Stop.
make: *** odmbc: No such file or directory. Stop.
make: *** profiler: No such file or directory. Stop.
make: *** resman: No such file or directory. Stop.
make: *** structs: No such file or directory. Stop.
make: *** tmi: No such file or directory. Stop.
make: *** [clean] Error 2

for i in plugins/chat plugins/db plugins/events plugins/fixes plugins/functions plugins/hashset plugins/mnx plugins/odmbc plugins/profiler plugins/reset plugins/resman plugins/structs plugins/tmi plugins/weapons chat events fixes leto odmbc profiler resman structs tmi; do make -C $i distclean; done
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/chat'
/bin/rm -f *.o *.so *~
/bin/rm -f Makefile
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/chat'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/db'
/bin/rm -f *.o *.so *~
/bin/rm -f Makefile
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/db'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/events'
/bin/rm -f *.o *.so *~
/bin/rm -f Makefile
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/events'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/fixes'
/bin/rm -f *.o *.so *~
/bin/rm -f Makefile
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/fixes'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/functions'
/bin/rm -f *.o *.so *~
/bin/rm -f Makefile
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/functions'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/hashset'
/bin/rm -f *.o *.so *~
/bin/rm -f Makefile
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/hashset'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/mnx'
/bin/rm -f *.o *.so *~
/bin/rm -f Makefile
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/mnx'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/odmbc'
/bin/rm -f *.o *.so *~
/bin/rm -f Makefile
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/odmbc'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/profiler'
/bin/rm -f *.o *.so *~
/bin/rm -f Makefile
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/profiler'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/reset'
/bin/rm -f *.o *.so *~
/bin/rm -f Makefile
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/reset'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/resman'
/bin/rm -f *.o *.so *~
/bin/rm -f Makefile
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/resman'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/structs'
/bin/rm -f *.o *.so *~
/bin/rm -f Makefile
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/structs'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/tmi'
/bin/rm -f *.o *.so *~
/bin/rm -f Makefile
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/tmi'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/weapons'
/bin/rm -f *.o *.so funcs/*.o hooks/*.o tables/*.o
/bin/rm -f .depend WeaponsStrCmds.h WeaponsObjCmds.h
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/plugins/weapons'
make[1]: Entering directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/chat'
make[1]: *** No rule to make target `distclean'. Stop.
make[1]: Leaving directory `/home/lalatest/svn/checkout/nwnx2-linux/trunk/chat'
make: *** events: No such file or directory. Stop.
make: *** fixes: No such file or directory. Stop.
make: *** leto: No such file or directory. Stop.
make: *** odmbc: No such file or directory. Stop.
make: *** profiler: No such file or directory. Stop.
make: *** resman: No such file or directory. Stop.
make: *** structs: No such file or directory. Stop.
make: *** tmi: No such file or directory. Stop.
make: *** [distclean] Error 2

NWNX has been compiled. Look in the 'compiled' directory for the libraries - these should be copied into your NWN directory. Change NWNX2.ini and nwnstartup.sh to match your server's settings.


# ls -l compiled

total 8
-rw-r--r-- 1 user user 324 Aug 8 06:39 nwnstartup.sh
-rw-r--r-- 1 user user 485 Aug 8 06:39 nwnx2.ini


Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    nwnx.org Forum Index -> Linux development All times are GMT + 2 Hours
Goto page 1, 2, 3, 4  Next
Page 1 of 4

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group