Subject: Re: [Boost-bugs] [Boost C++ Libraries] #1018: Boost.Python library that is linked to OpenGL results in segfault upon output to std::cerr
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2007-05-31 17:24:14
#1018: Boost.Python library that is linked to OpenGL results in segfault upon
output to std::cerr
-------------------------------+--------------------------------------------
Reporter: alanic_at_[hidden] | Owner: dave
Type: Bugs | Status: closed
Milestone: | Component: Python
Version: release 1.34.0 | Severity: Showstopper
Resolution: invalid | Keywords: python cerr OpenGL
-------------------------------+--------------------------------------------
Changes (by dave):
* status: new => closed
* resolution: => invalid
Comment:
I tested this and couldn't reproduce it. I was unable to make the link
line as shown succeed (I got:
{{{
/usr/bin/ld: cannot find -lGL
collect2: ld returned 1 exit status
}}}
), so I used this:
"g++" -o "/tmp/bb/boost-python-quickstart/gcc-4.1.2/debug/extending.so"
-Wl,-h -Wl,extending.so -shared -Wl,--start-group "/tmp/bb/boost-python-
quickstart/gcc-4.1.2/debug/extending.o"
"/tmp/bb/boost/bin.v2/libs/python/build/gcc-4.1.2/debug/libboost_python-
gcc41-d-1_34_1.so.1.34.1" /usr/lib/libGL.so.1 -lutil -lpthread -ldl -Wl,
--end-group -g
which worked (obviously I still don't understand linking well enough).
The test ran as follows:
{{{
python "test_extending.py"
cerr
cerr
cerr
cerr
cerr
Trying:
from extending import *
Expecting nothing
ok
Trying:
hi = hello('California')
Expecting nothing
ok
Trying:
hi.greet()
Expecting:
'Hello from California'
cout0 0 0 0
ok
Trying:
invite(hi)
Expecting:
'Hello from California! Please come soon!'
cout0 0 0 0
ok
Trying:
hi.invite()
Expecting:
'Hello from California! Please come soon!'
cout0 0 0 0
ok
Trying:
class wordy(hello):
def greet(self):
return hello.greet(self) + ', where the weather is fine'
Expecting nothing
ok
Trying:
hi2 = wordy('Florida')
Expecting nothing
ok
Trying:
hi2.greet()
Expecting:
'Hello from Florida, where the weather is fine'
cout0 0 0 0
ok
Trying:
invite(hi2)
Expecting:
'Hello from Florida! Please come soon!'
cout0 0 0 0
ok
1 items had no tests:
test_extending.run
1 items passed all tests:
9 tests in test_extending
9 tests in 2 items.
9 passed and 0 failed.
Test passed.
EXIT STATUS: 0
}}}
If someone can tell me what packages to install on ubuntu in order to
reproduce this, I'll be happy to take a look (though I can't imagine what
relationship we might have to OpenGL). I seem to have /usr/lib/libGL.so.1
symlinked to /usr/lib/libGL.so.1.2 already on the system. Until then I'm
closing the ticket as nonreproducible. Please feel free to reopen.
--
Ticket URL: <http://svn.boost.org/trac/boost/ticket/1018#comment:2>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:49:55 UTC