Reasons are:
- Codelite is more adopted for C++, than Eclipse which is fine for
Java
- Codelite seems faster
- Codelite has GUI with many features from MSDEV and some from Eclipse
- Codelite supports Subversion, MinGW and its setup is very fast and
straightforward
- Codelite has many positive reviews
That's why discussion in topic "migration to Eclipse" continued in
"migration to Codelite"
For sockets try also including -lwsock32 library. You can copy that
static lib from MINGW installation folder under /lib folder.
generic include and binaries are intentionally separated from
aiengine.
Rare updates are expected in generic - let's consider it as 3d-party
library.
Currently it is mature enough (though cannot say good) and I think it
is better to have boundary to not allow immaturity to expand.
I don't think it is good to have direct inter-project links.
Imagine you have relatively big components A and B, A depends from B
(in practice we usually have C which also depends from B).
Also you have mainline (HEAD) versions of components and release
(stable, verified) versions.
So in theory you can have Arel x Brel, Ahead x Brel, Ahead x Bhead or
Arel x Bhead. In terms of stability, Ahead x Bhead should be avoided,
because unstable changes in Bhead (maybe done for C or for some future
change of A) multiplied by unstable changes in Ahead will create extra
instability and inconvenience for other team members.
Currently we have Ahead x Brel configuration as std development
framework.
In local workspace (w/o commit) you can have Ahead x Bhead if you have
correlated changes.
Re sockets - in aiengine -lws2_32 is working fine.
What is the difference?
-lwsock32 - is it winsock 1.0?
Both projects are using winsock2.h header.
compare:
1.
----------Building project:[ aiconsole - Debug ]----------
g++ -o ./bin/aiconsole-debug.exe ./build/debug/main.o "-L." "-LK:/
projects/ai2svn/human/aiconsole/lib/debug" -laiapi.debug -lws2_32
----------Build Ended----------
0 errors, 0 warnings
2.
----------Building project:[ aiconsole - Debug ]----------
g++ -o ./bin/aiconsole-debug.exe ./build/debug/main.o "-L." "-LK:/
projects/ai2svn/human/aiconsole/lib/debug" -lws2_32 -laiapi.debug
K:/projects/ai2svn/human/aiconsole/lib/debug/libaiapi.debug.a
(aiapisocket.o):K:/projects/ai2svn/human/aiapi/src/aiapisocket.cpp:21:
undefined reference to `WSAStartup@8'
The link order has impact on results!
This is quite unexpected for me...
tried server run - it is ok now - behaves as before.
still not tried debug...
about the sequence of library ..its interesting and a learning for
me...creating a separate thrad for all the learnings.....
will copy yours in the same.
I have 2 problems:
For some reason aiengine incremental build always performs link stage.
When starting debugger, it reports that unable set breakpoint.
If turn on full debug logging, you can see:
DEBUG>>00000012-break-insert "\"K:/projects/ai2svn/human/aiengine/src/
main.cpp:10\""
DEBUG>>00000012^error,msg="No source file named K:/projects/ai2svn/
human/aiengine/src/main.cpp."
Breakpoint creation unsuccessful
ERROR: failed to place breakpoint: "^error,msg="No source file named
K:/projects/ai2svn/human/aiengine/src/main.cpp.""
No source file named K:/projects/ai2svn/human/aiengine/src/main.cpp.
So debugger adds extra "." to the end of the file.
It is open question why...