axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nandika Jayawardana (JIRA)" <>
Subject [jira] Resolved: (AXIS2C-722) The subject of C Run-Time depending on compilation option /MT, /MD
Date Mon, 15 Oct 2007 06:56:50 GMT


Nandika Jayawardana resolved AXIS2C-722.

    Resolution: Fixed

I changed the build options in makefile and allowed the user to specify the CRUNTIME library
in file. When building axis2c , it will be build with /MD option by default.
Also when building Axis2 with VC2005 or above, it generates the .manifest file which has the
runtime library information.

> The subject of C Run-Time depending on compilation option /MT, /MD 
> -------------------------------------------------------------------
>                 Key: AXIS2C-722
>                 URL:
>             Project: Axis2-C
>          Issue Type: Improvement
>          Components: build system (Windows)
>    Affects Versions: Current (Nightly)
>         Environment: OS: WindowsXP
> Compiler : MSVC
>            Reporter: Atsushi Monna
> I think Axis2/C has a problem about C Run-Time in windows.
> I made a dll calling Axis2/C public function using file stream in axutil.
> When I used this dll, access violation was occured.
> In concretely, 
> I use the axutil_stream_t object created by axutil_stream_create_file(const axutil_env_t
*env, FILE *fp) in axutil_stream_read(). I caught a access violation.
> Reason is ...
> The file pointer above can not use in this DLL(axutil.dll), because Axis2/C builded with
/MT option.
> The relation between MSVC compliation option and C Run-Time Libraries is indicated in
this page.
> The problem depending on C Run-Time Libraries is indicated in this page.
> Every Axis2/C module has static C Run-Time in local. So, boundaries exist among all.
> To be valid the public function has file pointer argument in axutil, use /MD compilation
option for common C Run-Time (not exist boundaries) amonng all.
> But this way is not enough. If the C Run-Time version depended Axis2/C modules are defferent
with the C Run-Time version depended module that calling Axis2/C modules API, same problem
will occur.
> I think, complete solution for this problem is Axis2/C binary release builded with /MD
compilation option and specify C Run-Time Library version. 
> I hope above.
> Depending C Run-Time version depend on build environment. For any user using Axis2/C
binary release, provide some binary release for every C Run-Time versions. It is better I
> If I cann't get Axis2/C binary release like this, I hope the lowest that Axis2/C be clear
the policy in a document for this problem.
> ・Axis2/C binary release builded using /MT compilation option.
> ・This modules has some problem depending C Run-Time Libraries.
> ・If you call Axis2/C module's API, you need to re-build Axis2/C using /MD compilation

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message