Konstantin,

On 6/22/14, 1:40 PM, Konstantin Kolinko wrote:
> 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).

Agreed. I was hoping that Mladen would jump in at some point ;)

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

Oh, sorry. I didn't realize that. I'm spoiled by a list-compliant mail
agent ;)

> 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?

Okay, I'll do that next time, assuming I do it again. I may start
putting the script somewhere more useful, like BZ, wiki, or even svn
with some significant warnings.

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

I didn't know about that. Another possibility.

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

Also very good to know: I'll start using that syntax.

> 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.

Yup. I do have a "legit" Windows 8 environment as well. I first wanted
to find out if it could be done on a freely-available VM because a) I
didn't want top pollute my other environment and b) I wanted others to
be able to replicate my work without polluting their own environments.
Not everyone wants to install MSVC++, etc.

Thanks for all your thoughts.

Thanks,
-chris

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to