Created
September 9, 2013 19:25
-
-
Save chrisa/6500268 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
~/ruby-usdt ➔ git submodule update --init | |
Submodule 'ext/libusdt' (https://github.com/chrisa/libusdt) registered for path 'ext/libusdt' | |
Cloning into 'ext/libusdt'... | |
remote: Counting objects: 347, done. | |
remote: Compressing objects: 100% (115/115), done. | |
remote: Total 347 (delta 231), reused 347 (delta 231) | |
Receiving objects: 100% (347/347), 76.46 KiB, done. | |
Resolving deltas: 100% (231/231), done. | |
Submodule path 'ext/libusdt': checked out 'ac9e412ff58b8b0208608ef5c764fbb3bae755ee' | |
~/ruby-usdt ➔ cd ext/libusdt/ | |
~/ruby-usdt/ext/libusdt ➔ make | |
gcc -O2 -arch i386 -arch x86_64 -c -o usdt.o usdt.c | |
gcc -O2 -arch i386 -arch x86_64 -c -o usdt_dof_file.o usdt_dof_file.c | |
gcc -arch i386 -o usdt_tracepoints_i386.o -c usdt_tracepoints_i386.s | |
gcc -arch x86_64 -o usdt_tracepoints_x86_64.o -c usdt_tracepoints_x86_64.s | |
lipo -create -output usdt_tracepoints.o usdt_tracepoints_i386.o \ | |
usdt_tracepoints_x86_64.o | |
gcc -O2 -arch i386 -arch x86_64 -c -o usdt_probe.o usdt_probe.c | |
gcc -O2 -arch i386 -arch x86_64 -c -o usdt_dof.o usdt_dof.c | |
gcc -O2 -arch i386 -arch x86_64 -c -o usdt_dof_sections.o usdt_dof_sections.c | |
rm -f libusdt.a | |
ar cru libusdt.a usdt.o usdt_dof_file.o usdt_tracepoints.o usdt_probe.o usdt_dof.o usdt_dof_sections.o | |
ranlib libusdt.a | |
~/ruby-usdt/ext/libusdt ➔ cd ../usdt | |
~/ruby-usdt/ext/usdt ➔ ruby extconf.rb | |
checking for dtrace_open() in -ldtrace... yes | |
make: Nothing to be done for `all'. | |
checking for main() in -lusdt... yes | |
checking for usdt.h... yes | |
creating Makefile | |
~/ruby-usdt/ext/usdt ➔ make | |
gcc-apple-4.2 -I. -I/Users/chris/.rvm/rubies/ruby-1.9.2-p320/include/ruby-1.9.1/x86_64-darwin12.2.0 -I/Users/chris/.rvm/rubies/ruby-1.9.2-p320/include/ruby-1.9.1/ruby/backward -I/Users/chris/.rvm/rubies/ruby-1.9.2-p320/include/ruby-1.9.1 -I. -DHAVE_USDT_H -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -fno-common -I/Users/chris/.rvm/usr/include -fno-common -pipe -o usdt.o -c usdt.c | |
usdt.c: In function 'probe_fire': | |
usdt.c:171: warning: cast to pointer from integer of different size | |
gcc-apple-4.2 -dynamic -bundle -o usdt.bundle usdt.o -L. -L/Users/chris/.rvm/rubies/ruby-1.9.2-p320/lib -L. -L/Users/chris/.rvm/usr/lib -L/usr/local/lib -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -Wl,-flat_namespace -lruby.1.9.1 -lusdt -ldtrace -lpthread -ldl -lobjc | |
~/ruby-usdt/ext/usdt ➔ cd ../.. | |
~/ruby-usdt ➔ ruby ext/usdt/test.rb | |
#<USDT::Provider:0x007fed7a04fbe0> | |
run: | |
sudo dtrace -n 'ruby*:test:myfn:probe { printf("%s %s %d", | |
copyinstr(arg0), | |
copyinstr(arg1), | |
args[2]) | |
}' | |
Fired! | |
Fired! | |
Fired! | |
Fired! |
got it fixed, but now getting another problem,
-bash-4.1$ ruby ext/usdt/test.rb
ld.so.1: ruby: fatal: relocation error: file /home/chamila/jr/ruby-dt/ruby-usdt/ext/usdt/usdt.so: symbol usdt_create_provider: referenced symbol not found
Killed
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Hii there,
Thank you for replying,
But make doesn't work for me, gmake either,
-bash-4.1$ make
make: Fatal error in reader: Makefile, line 9: Unexpected end of line seen
-bash-4.1$ gmake
gmake: Nothing to be done for `all'.