[sldev] [VWR, LINUX] How to compile "Debug" and "Release" viewers?

Opensource Obscure open at autistici.org
Tue Mar 24 15:38:29 PDT 2009


I can consistently reproduce a 1.23-render-pipeline viewer crash,
by zooming out fast while in a place with lots of textures that
aren't fully loaded yet.
I want to document and report this (see bottom of this email
for more details), and I thought that a "Debug" build would have
produced better information, so I tried to compile one. 

The Linux viewers I usually make by using 
./develop.py configure
./develop.py build
are of the "RelWithDebInfo" build type - correct?

Surely I'm doing it wrong, because both the "Debug" and the 
"Release" binaries I made have nearly the same size, 
and they provide similar logs.

What is the correct way to compile a "Debug" and a "Release" viewer?

Here's what I did for the "Debug" one:
./develop.py clean
./develop.py configure -DCMAKE_BUILD_TYPE:STRING=Debug
./develop.py build

(previously I had already built a viewer from the same
sources - that's why I didn't have to copy FMOD here)

ciao,
Opensource Obscure


error message when crashing:
2009-03-24T22:06:43Z llrender/llvertexbuffer.cpp(1199) : error
2009-03-24T22:06:43Z ERROR: setupVertexBuffer:
LLVertexBuffer::setupVertexBuffer missing required components for supplied
data mask.


stack_trace.log:
0:	ELF(do_elfio_glibc_backtrace()+0x424) [0x9995fa8]
1:	ELF(LLAppViewerLinux::handleSyncCrashTrace()+0xb) [0x99968c7]
2:	ELF(LLAppViewer::handleSyncViewerCrash()+0x20) [0x84d311e]
3:	ELF(LLApp::runSyncErrorHandler()+0x16) [0x9ed80ec]
4:	ELF(LLApp::setError()+0x17) [0x9ed8175]
5:	ELF(default_unix_signal_handler(int, siginfo*, void*)+0xd22) [0x9eda07e]
6:	[0xb7ffa410]
7:	ELF(LLError::crashAndLoop(std::string const&)+0x10) [0x9ee7f26]
8:	ELF(errorCallback(std::string const&)+0x9f) [0x84e2dd8]
9:	ELF(LLError::Log::flush(std::basic_ostringstream<char,
std::char_traits<char>, std::allocator<char> >*, LLError::CallSite
const&)+0x9e1) [0x9eeb5c7]
10:	ELF(LLVertexBuffer::setupVertexBuffer(unsigned int) const+0x17c)
[0x9b98374]
11:	ELF(LLVertexBuffer::setBuffer(unsigned int)+0xbd5) [0x9b9bebb]
12:	ELF(LLRenderPass::pushBatch(LLDrawInfo&, unsigned int, int)+0x13c)
[0x86408c6]
13:	ELF(LLRenderPass::pushBatches(unsigned int, unsigned int, int)+0x62)
[0x86409f2]
14:	ELF(LLRenderPass::renderTexture(unsigned int, unsigned int)+0x2e)
[0x863c6ce]
15:	ELF(LLDrawPoolSimple::render(int)+0x81) [0x864cf0d]
16:	ELF(LLPipeline::renderGeom(LLCamera&, int)+0xd45) [0x99686cd]
17:	ELF(display(int, float, int, int)+0x4050) [0x94bb04a]
18:	ELF(LLAppViewer::mainLoop()+0xd25) [0x84f5ccf]
19:	ELF(main+0x213) [0x999769c]
20:	/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe5) [0xb6756685]
21:	bin/do-not-directly-run-secondlife-bin [0x847c8e1]


More information about the SLDev mailing list