2014-06-19 23:21 GMT+04:00 Christopher Schultz <ch...@christopherschultz.net>:
> All,
>
> I'm stuck on trying to get tcnative to build for x86_64.
>
> When I run nmake with BUILD_CPU=x86_64, I get a bunch of compiler
> warnings followed by a linker failure like this (apologies for the lack
> of formatting).
>
> One problem may be that I am running a 32-bit OS: is it possible to
> build 64-bit binaries from 32-bit OS? Given the build instructions for
> x86_64 for tcnative, I would have imagined that MSVC++ was a
> cross-compiler and that I would be able to build IA32, IA64, and x86_64
> all from the same machine.
>
> Here's the command that I actually ran from my script:
>   nmake -f NMAKEMakefile BUILD_CPU=%TARGET_ARCH%
>                          "WITH_APR=%MYTEMP%\build\apr"
>                          "WITH_OPENSSL=%MYTEMP%\build\openssl"
>                           APR_DECLARE_STATIC=1
>                           %TCNATIVE_ENABLE_OCSP%
>
> This command works when TARGET_ARCH=x86 but fails when TARGET_ARCH=x86_64.
>
> (...)
>
> C:\Program Files\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(112) :
> warning
>  C4391: 'size_t strlen(const char *)' : incorrect return type for
> intrinsic function, expected 'unsigned int'
> C:\Program Files\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(285) :
> warning
>  C4391: 'size_t wcslen(const wchar_t *)' : incorrect return type for
> intrinsic f
> unction, expected 'unsigned int'
>         rc /l 0x409 /d "NDEBUG" /i ".\include" /fo
> WINXP_X64_DLL_RELEASE\tcnativ
> e-1.res .\os\win32\libtcnative.rc
> Microsoft (R) Windows (R) Resource Compiler Version 6.1.7600.16385
> Copyright (C) Microsoft Corporation.  All rights reserved.
>

Cross-compilation should be possible. I think Mladen does not own an
Itanium CPU to build i64 version of native.

I think there either are several versions of the same header file, or
an #if block that changes definition of that size type depending on
architecture.

In any case the good news is that something changed by changing
TARGET_ARCH. So that flag is working (in some way).


Several notes on previous mails in this thread
1. Please stick to some %Subject%.  Changing %Subject% I causes GMail
to break the thread.

2. Please do not send .bat files as attachments. Those two mails
happened to pass through mailing list server, but were silently
rejected by GMail. I do not have them in my inbox.  It is lucky that
they can be viewed on an archive server.

Maybe paste the contents of the bat file into the message text inetead
of attaching it?

BTW, there exists paste.apache.org,  but I have never used it.
https://blogs.apache.org/infra/entry/paste_apache_org_sees_the

3. The syntax for using double quotes with SET command is
SET "FOO=BAR BAZ"
or
SET FOO=BAR BAZ

We have an example in catalina.bat.

4. Regarding [1], the "license terms" link says that the installed OS
version is time-limited (90 days). Be sure to archive your scripts and
configuration before the time expires.

[1] https://www.modern.ie/en-us/virtualization-tools

Best regards,
Konstantin Kolinko

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to