I'm once again using wb. On a Linux box under 3.1.2 with v1.19.
When I do 'meta list' I see the following:
Currently loaded plugins:
description stat pend file vers src load unlod
[ 1] AMX Mod X RUN - amxmodx_mm_i386. v1.60 ini ANY ANY
[ 2] whichbot RUN - libwhichbot.so v1.02 ini Start Start
Are the super cool new features in 1.04/5 not being built for Linux or is the version info just stale?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Here is the log when I type build in the bot dir. This is right after I remove the bot dir and then repull the CVS repository, so I'm sure it's the latest files and not something I borked.
--------------------------
/raid/build/bot# ant -v
Apache Ant version 1.7.0 compiled on December 13 2006
Buildfile: build.xml
Detected Java version: 1.6 in: /raid/jdk/jre
Detected OS: Linux
parsing buildfile /raid/build/bot/build.xml with URI = file:/raid/build/bot/build.xml
Project base dir set to: /raid/build/bot
[antlib:org.apache.tools.ant] Could not load definitions from resource org/apache/tools/ant/antlib.xml. It could not be found.
[taskdef] Could not load definitions from resource cpptasks.tasks. It could not be found.
[typedef] Could not load definitions from resource cpptasks.types. It could not be found.
Build sequence for target(s) `all' is [set-properties, which-os, set-windows-properties, set-unix-properties, detect-os, make-dirs, copy-valve-lib, prepare, init, define-compilers, compile, build, all]
Complete build sequence is [set-properties, which-os, set-windows-properties, set-unix-properties, detect-os, make-dirs, copy-valve-lib, prepare, init, define-compilers, compile, build, all, clean, check-version, dist, ]
set-properties:
[property] Loading /raid/build/bot/build.properties
Property "version" has not been set
which-os:
set-windows-properties:
Skipped because property 'os.iswindows' not set.
set-unix-properties:
[echo] Unix OS detected.
detect-os:
make-dirs:
[mkdir] Skipping /raid/build/bot/build because it already exists.
[mkdir] Skipping /raid/build/bot/build/valve because it already exists.
[mkdir] Skipping /raid/build/bot/build/valve/dlls because it already exists.
[mkdir] Skipping /raid/build/bot/dist because it already exists.
[mkdir] Skipping /raid/build/bot/dist/addons because it already exists.
[mkdir] Skipping /raid/build/bot/dist/addons/whichbot because it already exists.
[mkdir] Skipping /raid/build/bot/dist/addons/whichbot/data because it already exists.
[mkdir] Skipping /raid/build/bot/dist/addons/whichbot/dlls because it already exists.
[mkdir] Skipping /raid/build/bot/dist/addons/metamod because it already exists.
[mkdir] Skipping /raid/build/bot/dist/addons/metamod/dlls because it already exists.
copy-valve-lib:
[copy] No sources found.
[copy] No sources found.
prepare:
init:
define-compilers:
BUILD FAILED
/raid/build/bot/build.xml:88: Problem: failed to create task or type compiler
Cause: The name is undefined.
Action: Check the spelling.
Action: Check that any custom tasks/types have been declared.
Action: Check that any <presetdef>/<macrodef> declarations have taken place.
at org.apache.tools.ant.UnknownElement.getNotFoundException(UnknownElement.java:481)
at org.apache.tools.ant.UnknownElement.makeObject(UnknownElement.java:413)
at org.apache.tools.ant.UnknownElement.maybeConfigure(UnknownElement.java:160)
at org.apache.tools.ant.Task.perform(Task.java:347)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
at org.apache.tools.ant.Project.executeTarget(Project.java:1298)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1181)
at org.apache.tools.ant.Main.runBuild(Main.java:698)
at org.apache.tools.ant.Main.startAnt(Main.java:199)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
Total time: 2 seconds
----------------------------------
The line 88 that the BUILD FAILED message refers to is here:
<compiler id="msvc-cl" name="msvc" exceptions="no">
<compilerarg value="/GX-" />
<compilerarg value="/Zi" />
<compilerarg value="/O2" />
<sysincludepath>
<pathelement path="${msvc.include}" />
</sysincludepath>
I tried removing everything related to MSVC from the compiler ID section, but then ant starts complaining about the GCC defs...
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
hrm. I need to read the ant install manual better. I'd put the ant-contrib and ccptasks jars into the jdk lib dir instead of the ant lib dir. That fixed it.
(Please ignore the icky dump above)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Last I checked the CVS it was for the Windows build. I could be talking out my butt here, but the version could be set in a different place for the Linux version, and it could be it was just a missed detail that wouldn't be reflected in the CVS. As I said, I'm pretty sure that the version I am using, 1.04/1.05, on my Linux server contains the advances made in the 1.04 code.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Seems to indicate that ns_i386.so should be linked. Yet the new build.xml seems to ref a valve/hl_i386.so.
Is this right, or is the info in the old thread stale? I can't seem to get the module to load either way, but it is compiling right, now that I have cpptasks and ant-contrib in the right place.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I was able to get the bots working by referencing nsp/dlls/ns_i386.so instead of the valve/dlls/hl_i386.so file. Several things in the build.xls have to be changed to get the wb building properly under Linux currently it seems.
If I came up with a psudo patch for the build.xls so that Linux builds would compile right out of a CVS pull, could/would someone be interested in incorporating the changes into the code?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello,
I'm once again using wb. On a Linux box under 3.1.2 with v1.19.
When I do 'meta list' I see the following:
Currently loaded plugins:
description stat pend file vers src load unlod
[ 1] AMX Mod X RUN - amxmodx_mm_i386. v1.60 ini ANY ANY
[ 2] whichbot RUN - libwhichbot.so v1.02 ini Start Start
Are the super cool new features in 1.04/5 not being built for Linux or is the version info just stale?
Just to clarify, I downloaded and installed 1.05, but I'm still seeing 1.02 as the version info in meta info.
I'm just guessing, but I expect the version info wasn't updated in the code. I'm pretty certain the Linux build is 1.04/1.05.
It seems like the Linux version is out of date, because looking at the code from CVS, the build info is correctly updated as 1.05.
version.h:#define WHICHBOT_VERSION_STR "1.05"
This makes me think the Linux version is a few builds back.
I've got ant and the CVS downloaded but it seems there are some MSVC specific things in the build.xls that aren't handled properly currently..
Here is the log when I type build in the bot dir. This is right after I remove the bot dir and then repull the CVS repository, so I'm sure it's the latest files and not something I borked.
--------------------------
/raid/build/bot# ant -v
Apache Ant version 1.7.0 compiled on December 13 2006
Buildfile: build.xml
Detected Java version: 1.6 in: /raid/jdk/jre
Detected OS: Linux
parsing buildfile /raid/build/bot/build.xml with URI = file:/raid/build/bot/build.xml
Project base dir set to: /raid/build/bot
[antlib:org.apache.tools.ant] Could not load definitions from resource org/apache/tools/ant/antlib.xml. It could not be found.
[taskdef] Could not load definitions from resource cpptasks.tasks. It could not be found.
[typedef] Could not load definitions from resource cpptasks.types. It could not be found.
Build sequence for target(s) `all' is [set-properties, which-os, set-windows-properties, set-unix-properties, detect-os, make-dirs, copy-valve-lib, prepare, init, define-compilers, compile, build, all]
Complete build sequence is [set-properties, which-os, set-windows-properties, set-unix-properties, detect-os, make-dirs, copy-valve-lib, prepare, init, define-compilers, compile, build, all, clean, check-version, dist, ]
set-properties:
[property] Loading /raid/build/bot/build.properties
Property "version" has not been set
which-os:
set-windows-properties:
Skipped because property 'os.iswindows' not set.
set-unix-properties:
[echo] Unix OS detected.
detect-os:
make-dirs:
[mkdir] Skipping /raid/build/bot/build because it already exists.
[mkdir] Skipping /raid/build/bot/build/valve because it already exists.
[mkdir] Skipping /raid/build/bot/build/valve/dlls because it already exists.
[mkdir] Skipping /raid/build/bot/dist because it already exists.
[mkdir] Skipping /raid/build/bot/dist/addons because it already exists.
[mkdir] Skipping /raid/build/bot/dist/addons/whichbot because it already exists.
[mkdir] Skipping /raid/build/bot/dist/addons/whichbot/data because it already exists.
[mkdir] Skipping /raid/build/bot/dist/addons/whichbot/dlls because it already exists.
[mkdir] Skipping /raid/build/bot/dist/addons/metamod because it already exists.
[mkdir] Skipping /raid/build/bot/dist/addons/metamod/dlls because it already exists.
copy-valve-lib:
[copy] No sources found.
[copy] No sources found.
prepare:
init:
define-compilers:
BUILD FAILED
/raid/build/bot/build.xml:88: Problem: failed to create task or type compiler
Cause: The name is undefined.
Action: Check the spelling.
Action: Check that any custom tasks/types have been declared.
Action: Check that any <presetdef>/<macrodef> declarations have taken place.
at org.apache.tools.ant.UnknownElement.getNotFoundException(UnknownElement.java:481)
at org.apache.tools.ant.UnknownElement.makeObject(UnknownElement.java:413)
at org.apache.tools.ant.UnknownElement.maybeConfigure(UnknownElement.java:160)
at org.apache.tools.ant.Task.perform(Task.java:347)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
at org.apache.tools.ant.Project.executeTarget(Project.java:1298)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1181)
at org.apache.tools.ant.Main.runBuild(Main.java:698)
at org.apache.tools.ant.Main.startAnt(Main.java:199)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
Total time: 2 seconds
----------------------------------
The line 88 that the BUILD FAILED message refers to is here:
<compiler id="msvc-cl" name="msvc" exceptions="no">
<compilerarg value="/GX-" />
<compilerarg value="/Zi" />
<compilerarg value="/O2" />
<sysincludepath>
<pathelement path="${msvc.include}" />
</sysincludepath>
I tried removing everything related to MSVC from the compiler ID section, but then ant starts complaining about the GCC defs...
hrm. I need to read the ant install manual better. I'd put the ant-contrib and ccptasks jars into the jdk lib dir instead of the ant lib dir. That fixed it.
(Please ignore the icky dump above)
Last I checked the CVS it was for the Windows build. I could be talking out my butt here, but the version could be set in a different place for the Linux version, and it could be it was just a missed detail that wouldn't be reflected in the CVS. As I said, I'm pretty sure that the version I am using, 1.04/1.05, on my Linux server contains the advances made in the 1.04 code.
Just the same, I'd like to be able to build from CVS to ensure I've got the level best code.
One question about building under linux. This thread:
http://sourceforge.net/forum/forum.php?thread_id=940363&forum_id=262472
Seems to indicate that ns_i386.so should be linked. Yet the new build.xml seems to ref a valve/hl_i386.so.
Is this right, or is the info in the old thread stale? I can't seem to get the module to load either way, but it is compiling right, now that I have cpptasks and ant-contrib in the right place.
I was able to get the bots working by referencing nsp/dlls/ns_i386.so instead of the valve/dlls/hl_i386.so file. Several things in the build.xls have to be changed to get the wb building properly under Linux currently it seems.
If I came up with a psudo patch for the build.xls so that Linux builds would compile right out of a CVS pull, could/would someone be interested in incorporating the changes into the code?