Friday, December 02, 2005

so library

to compile and so lib put -fPIC -shared in CFLAGS

Here is a nice tutorial

use gdb, makefiles, g++

use gdb for debugging applications:

1. #first put debug info in Makefile files:
LDFLAGS = -g -W1
CFLAGS = -g

2. #run make

3.
gdb appname
#put breakpoints with:
break [FUNC_NAME]
# [FUNC_NAME] is the function name

4. r [ARGS]
#where ARGS are the args needed for the app

5.
#s for steps
#n for next line of code
#c for run to next breakpoint
#detach to leave program running
#kill to stop app

6. to kill an app being debugged:
ps -C appname
kill -9 apppid
#after that close parent app - or type 'exit' in the parent terminal window.

--------------

Here is the KDbg home page.
KDbg = debugger for KDE, based on gdb.

----

gdb tutorials:
Debugging Under Unix: gdb Tutorial
Debugging with gdb


gnu make tutorial:
GNU make

g++ tutorial

working with svn

http://svnbook.red-bean.com/

to get a previous committed version :
1.
svn list -v
#to list the files and see versions
2.
update -r [VERSION_NUM]
#where istead of [VERSION_NUM] comes the desired version number

svn commit
svn add
svn delete

use tortoisesvn under windows
use subversion under fedora linux

Microsoft Visual C++ Toolkit 2003

vctoolkit2003

SPL - cross platform simple plugin layer (framework)

a simple plugin layer sdk
http://www.codeguru.com/Cpp/Cpp/cpp_mfc/portability/article.php/c7159

running functions before and after main (vc 6.0 - windows)

befora / after main

injecting code into an other process

source codes:
winspy
remote lib

winamp plugin architecture

winamp plugins

directshow filters architecture

generic issues:
http://www.cs.technion.ac.il/Labs/Isl/DirectShow/filters.htm

IBaseFilter
ibasefilterinterface.asp

"Transport" models between filters:
http://www.gdcl.co.uk/data.htm

bittorent protocol specification

official version:
http://www.bittorrent.com/protocol.html

other:
http://wiki.theory.org/BitTorrentSpecification
http://en.wikipedia.org/wiki/Bittorrent

Monday, November 28, 2005

Thursday, November 24, 2005

Monday, November 21, 2005

directx compilation problems

directx compilation problem with MFC:
error LNK2019: unresolved external symbol "int __stdcall lstrlenWInternal(wchar_t const *)" (?lstrlenWInternal@@YGHPB_W@Z) referenced in function "public: ....

Solution:
The definition of lstrlenW is in , included by , i.e. DirectShow (DirectX 9.0 SDK).
Putting #undef lstrlenW after the include solves the problem.

Monday, November 14, 2005

single app instance

allow only running of a single intance of an application:
- win: CreateMutex with name
- linux: sysv, futex

http://people.redhat.com/~drepper/futex.pdf

Tuesday, November 08, 2005

scp vs sftp

http://winscp.net/eng/docs/protocols

Monday, November 07, 2005

webdav plugin - total commander

webdav plugin - total commander:
http://www.totalcmd.net/plugring/webdav.html

sftp, bittorent, perl and others

ActivePerl - perl for windows:
http://activestate.com/Products/Download/Download.plex?id=ActivePerl

libtorrent - portable bittorent library:
http://sourceforge.net/projects/libtorrent
http://libtorrent.rakshasa.no/

libssh2 - portable ssh and sftp lib:
http://sourceforge.net/projects/libssh2/
doc!! -> http://www.libssh2.org/doc/

winsshd - windows ssh server:
http://www.bitvise.com/download-area.html

Tuesday, November 01, 2005

data compression links - source code

http://datacompression.info/SourceCode.shtml

w3mfc - mfc web server:
http://www.naughter.com/w3mfc.html

libjpeg / windows

a wrapper over libjpg
http://www.sfu.ca/~swongu/libjpeg/