SapphireDensetsu / ypsilon

Automatically exported from code.google.com/p/ypsilon
Other
0 stars 0 forks source link

Can compile on Ubuntu #157

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1. Download ypsilon from tarball or svn
2. run make command in the proper directory

What is the expected output? What do you see instead?

Working ypsilon binary, the compilation files the error pasted at the end of 
the message. The errors are in french but it says ptread not found.

What version of the product are you using? On what operating system?

latest

Please provide any additional information below.

My operating system is the latest Ubuntu 13.04 64bits

---
g++ -pipe -x c++ -pthread -O3 -fstrict-aliasing -fomit-frame-pointer 
-momit-leaf-frame-pointer -march=native -msse2 -mfpmath=sse -m64 -DNDEBUG 
-DSYSTEM_SHARE_PATH='"/usr/local/share/ypsilon"' -DDEFAULT_HEAP_LIMIT=64  -c -o 
subr_socket.o src/subr_socket.cpp
as --64  -o ffi_stub_linux64.o src/ffi_stub_linux64.s
g++ -m64 -lpthread -ldl -o ypsilon file.o main.o vm0.o object_heap_compact.o 
subr_flonum.o vm1.o object_set.o subr_hash.o vm2.o object_slab.o subr_list.o 
interpreter.o serialize.o vm3.o port.o subr_others.o arith.o printer.o 
subr_port.o subr_r5rs_arith.o equiv.o reader.o ffi.o subr_base.o bag.o 
subr_unicode.o hash.o subr_base_arith.o ucs4.o ioerror.o subr_bitwise.o utf8.o 
subr_bvector.o violation.o object_factory.o subr_ffi.o object_heap.o 
subr_fixnum.o bit.o list.o fasl.o socket.o subr_socket.o ffi_stub_linux64.o
main.o: dans la fonction « main »:
main.cpp:(.text.startup+0xac): référence indéfinie vers « pthread_sigmask »
main.cpp:(.text.startup+0xe6): référence indéfinie vers « pthread_create »
main.cpp:(.text.startup+0xfb): référence indéfinie vers « pthread_detach »
file.o: dans la fonction « load_shared_object(scm_string_rec_t*) »:
file.cpp:(.text+0x39a): référence indéfinie vers « dlopen »
file.o: dans la fonction « lookup_shared_object(void*, void*) »:
file.cpp:(.text+0x3bf): référence indéfinie vers « dlsym »
file.cpp:(.text+0x3d0): référence indéfinie vers « dlsym »
file.o: dans la fonction « last_shared_object_error() »:
file.cpp:(.text+0x3e1): référence indéfinie vers « dlerror »
interpreter.o: dans la fonction « mutex_t::init(bool) [clone .part.0] »:
interpreter.cpp:(.text+0x26): référence indéfinie vers « 
pthread_mutexattr_init »
interpreter.cpp:(.text+0x39): référence indéfinie vers « 
pthread_mutexattr_settype »
interpreter.cpp:(.text+0x58): référence indéfinie vers « 
pthread_mutexattr_destroy »
interpreter.o: dans la fonction « Interpreter::spawn(VM*, scm_closure_rec_t*, 
int, void**) »:
interpreter.cpp:(.text+0x77b): référence indéfinie vers « pthread_create »
interpreter.cpp:(.text+0x78f): référence indéfinie vers « pthread_detach »
object_factory.o: dans la fonction « mutex_t::init(bool) [clone .part.0] »:
object_factory.cpp:(.text+0x26): référence indéfinie vers « 
pthread_mutexattr_init »
object_factory.cpp:(.text+0x39): référence indéfinie vers « 
pthread_mutexattr_settype »
object_factory.cpp:(.text+0x58): référence indéfinie vers « 
pthread_mutexattr_destroy »
object_factory.o: dans la fonction « make_temp_file_port(object_heap_t*, 
void*, int, void*) »:
object_factory.cpp:(.text+0xb51): référence indéfinie vers « 
pthread_mutexattr_init »
object_factory.cpp:(.text+0xb6b): référence indéfinie vers « 
pthread_mutexattr_settype »
object_factory.cpp:(.text+0xb98): référence indéfinie vers « 
pthread_mutexattr_destroy »
object_factory.o: dans la fonction « make_std_port(object_heap_t*, int, void*, 
int, int, int, void*) »:
object_factory.cpp:(.text+0xd80): référence indéfinie vers « 
pthread_mutexattr_init »
object_factory.cpp:(.text+0xd99): référence indéfinie vers « 
pthread_mutexattr_settype »
object_factory.cpp:(.text+0xdc4): référence indéfinie vers « 
pthread_mutexattr_destroy »
object_factory.o: dans la fonction « make_file_port(object_heap_t*, void*, 
int, int, int, void*) »:
object_factory.cpp:(.text+0xfa4): référence indéfinie vers « 
pthread_mutexattr_init »
object_factory.cpp:(.text+0xfbd): référence indéfinie vers « 
pthread_mutexattr_settype »
object_factory.cpp:(.text+0xfe8): référence indéfinie vers « 
pthread_mutexattr_destroy »
object_factory.o: dans la fonction « make_bytevector_port(object_heap_t*, 
void*, int, void*, void*) »:
object_factory.cpp:(.text+0x11bf): référence indéfinie vers « 
pthread_mutexattr_init »
object_factory.cpp:(.text+0x11d8): référence indéfinie vers « 
pthread_mutexattr_settype »
object_factory.cpp:(.text+0x1203): référence indéfinie vers « 
pthread_mutexattr_destroy »
object_factory.o: dans la fonction « make_custom_port(object_heap_t*, void*, 
int, void*, void*) »:
object_factory.cpp:(.text+0x13df): référence indéfinie vers « 
pthread_mutexattr_init »
object_factory.cpp:(.text+0x13f8): référence indéfinie vers « 
pthread_mutexattr_settype »
object_factory.cpp:(.text+0x1423): référence indéfinie vers « 
pthread_mutexattr_destroy »
object_factory.o: dans la fonction « make_socket_port(object_heap_t*, 
scm_socket_rec_t*, void*) »:
object_factory.cpp:(.text+0x15f9): référence indéfinie vers « 
pthread_mutexattr_init »
object_factory.cpp:(.text+0x1613): référence indéfinie vers « 
pthread_mutexattr_settype »
object_factory.cpp:(.text+0x1640): référence indéfinie vers « 
pthread_mutexattr_destroy »
object_factory.o: dans la fonction « make_transcoded_port(object_heap_t*, 
void*, scm_port_rec_t*, scm_bvector_rec_t*) »:
object_factory.cpp:(.text+0x1811): référence indéfinie vers « 
pthread_mutexattr_init »
object_factory.cpp:(.text+0x182b): référence indéfinie vers « 
pthread_mutexattr_settype »
object_factory.cpp:(.text+0x1858): référence indéfinie vers « 
pthread_mutexattr_destroy »
object_factory.o: dans la fonction « make_socket(object_heap_t*, char const*, 
char const*, int, int, int, int) »:
object_factory.cpp:(.text+0x2c4b): référence indéfinie vers « 
pthread_mutexattr_init »
object_factory.cpp:(.text+0x2c64): référence indéfinie vers « 
pthread_mutexattr_settype »
object_factory.cpp:(.text+0x2c8f): référence indéfinie vers « 
pthread_mutexattr_destroy »
object_factory.o: dans la fonction « make_socket(object_heap_t*) »:
object_factory.cpp:(.text+0x2e51): référence indéfinie vers « 
pthread_mutexattr_init »
object_factory.cpp:(.text+0x2e69): référence indéfinie vers « 
pthread_mutexattr_settype »
object_factory.cpp:(.text+0x2e8f): référence indéfinie vers « 
pthread_mutexattr_destroy »
object_heap.o: dans la fonction « mutex_t::init(bool) [clone .part.1] »:
object_heap.cpp:(.text+0x56): référence indéfinie vers « 
pthread_mutexattr_init »
object_heap.cpp:(.text+0x69): référence indéfinie vers « 
pthread_mutexattr_settype »
object_heap.cpp:(.text+0x88): référence indéfinie vers « 
pthread_mutexattr_destroy »
object_heap.o: dans la fonction « object_heap_t::collector_init() »:
object_heap.cpp:(.text+0x2153): référence indéfinie vers « pthread_create »
object_heap.cpp:(.text+0x2162): référence indéfinie vers « pthread_detach »
object_heap.o: dans la fonction « object_heap_t::concurrent_marking() »:
object_heap.cpp:(.text+0x39a5): référence indéfinie vers « 
pthread_mutex_trylock »

Original issue reported on code.google.com by amirouch...@gmail.com on 22 Jul 2013 at 7:59

GoogleCodeExporter commented 8 years ago
I have exactly the same problem (and output to compilation)
Hope somebody can help

Original comment by ete41...@gmail.com on 6 Sep 2013 at 5:11

GoogleCodeExporter commented 8 years ago
As a matter of fact, it is corrected by the issue number 151 I posted in 2012 :

Change :    $(CXX) -pthread $(LDFLAGS) $(LDLIBS) -o $@ $^
into :          $(CXX) -pthread $(LDFLAGS) -o $@ $^  $(LDLIBS)

it works for me, ie no compilation problem anymore on (uname -a) :

Linux xxxxx 3.8.0-29-generic #42-Ubuntu SMP Tue Aug 13 19:40:39 UTC 2013 x86_64 
x86_64 x86_64 GNU/Linux

Original comment by ete41...@gmail.com on 6 Sep 2013 at 5:42