<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">Interesting, so cygwin is reporting as UNIX to cmake but yasm needs to make win64 binaries for it to link.<div><br></div><div><div><div><div>On Nov 19, 2013, at 8:42 PM, <a href="mailto:idxa@sina.com">idxa@sina.com</a> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>I have deleted "elseif(UNIX)" branch and it has been built successfully in Cygwin, thanks!</div>
<div> </div>
<div>if(X64)<br>    set(ASM_FLAGS "-DARCH_X86_64=1 -m amd64 -DPIC")<br>    if(APPLE)<br>        set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ARG1 "-f macho64 -DPREFIX")<br>    elseif(UNIX)<br></div></blockquote><div><br></div><div>does this work:</div><div><br></div><div>elseif(UNIX AND NOT CYGWIN)</div><br><blockquote type="cite"><div>        set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ARG1 "-f elf64")<br>    else()<br>        set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ARG1 "-f win64")<br>    endif()<br>else()<br>    set(ASM_FLAGS -DARCH_X86_64=0)<br>    if(APPLE)<br>        set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ARG1 "-f macho")<br>    else()<br>        set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ARG1 "-f win32 -DPREFIX")<br>    endif()<br>endif()</div>
<div> </div>
<div><br><font style="BACKGROUND-COLOR: #cccccc">On Tue, Nov 12, 2013 at 9:54 PM, chen <</font><a href="https://mailman.videolan.org/listinfo/x265-devel"><font style="BACKGROUND-COLOR: #cccccc">chenm003 at 163.com</font></a><font style="BACKGROUND-COLOR: #cccccc">> wrote:<br><br>></font><i><br></i><font style="BACKGROUND-COLOR: #cccccc">></font><i><font style="BACKGROUND-COLOR: #cccccc"> On Mon, Nov 11, 2013 at 8:51 PM, <</font><a href="https://mailman.videolan.org/listinfo/x265-devel"><font style="BACKGROUND-COLOR: #cccccc">idxa at sina.com</font></a><font style="BACKGROUND-COLOR: #cccccc">> wrote:<br></font></i><font style="BACKGROUND-COLOR: #cccccc">></font><i><br></i><font style="BACKGROUND-COLOR: #cccccc">>></font><font style="BACKGROUND-COLOR: #cccccc"><i> Hi,<br></i>>></font><font style="BACKGROUND-COLOR: #cccccc"><i> I have built x265 in cygwin using the following step,<br></i>>></font><font style="BACKGROUND-COLOR: #cccccc"><i> 1. cd x265/build/linux<br></i>>></font><font style="BACKGROUND-COLOR: #cccccc"><i> 2. ./make-Makefiles.bash<br></i>>></font><font style="BACKGROUND-COLOR: #cccccc"><i> 3. make<br></i>>></font><i><br></i><font style="BACKGROUND-COLOR: #cccccc">>></font><font style="BACKGROUND-COLOR: #cccccc"><i> it shows:<br></i>>></font><font style="BACKGROUND-COLOR: #cccccc"><i> Cannot export x265_cpu_cpuid: symbol not defined<br></i>>></font><font style="BACKGROUND-COLOR: #cccccc"><i> Cannot export x265_cpu_cpuid_test: symbol not defined<br></i>>></font><font style="BACKGROUND-COLOR: #cccccc"><i> Cannot export x265_cpu_emms: symbol not defined<br></i>>></font><font style="BACKGROUND-COLOR: #cccccc"><i> ...<br></i>>></font><font style="BACKGROUND-COLOR: #cccccc"><i> My question is how to modify to let x265 support cygwin?<br></i>>></font><i><br></i><font style="BACKGROUND-COLOR: #cccccc">></font><i><br></i><font style="BACKGROUND-COLOR: #cccccc">></font><font style="BACKGROUND-COLOR: #cccccc"><i> We primarily support MinGW for GCC on Windows, but in all likely-hood<br></i>></font><font style="BACKGROUND-COLOR: #cccccc"><i> cygwin could be made to work.<br></i>></font><i><br></i><font style="BACKGROUND-COLOR: #cccccc">></font><font style="BACKGROUND-COLOR: #cccccc"><i> Can you send me the full build log, particularly the cmake portion?  For<br></i>></font><font style="BACKGROUND-COLOR: #cccccc"><i> whatever reason cpu-a.asm isn't being linked into the static lib.<br></i>></font><i><br></i><font style="BACKGROUND-COLOR: #cccccc">></font><font style="BACKGROUND-COLOR: #cccccc"><i> Seems ABI problem, he use GCC makefile and Cygwin+Yasm use difference ABI</i></font></div><font style="BACKGROUND-COLOR: #cccccc"><i>
</i>></font><i><br></i><font style="BACKGROUND-COLOR: #cccccc">></font><i><br></i><br><font style="BACKGROUND-COLOR: #cccccc">good point.  This might be a yasm command line flag issue, our cmake file<br>has:<br>if(X64)<br>    set(ASM_FLAGS "-DARCH_X86_64=1 -m amd64 -DPIC")<br>    if(APPLE)<br>        set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ARG1 "-f macho64 -DPREFIX")<br>    elseif(UNIX)<br>        set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ARG1 "-f elf64")<br>    else()<br>        set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ARG1 "-f win64")<br>    endif()<br>else()<br>    set(ASM_FLAGS -DARCH_X86_64=0)<br>    if(APPLE)<br>        set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ARG1 "-f macho")<br>    elseif(UNIX)<br>        set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ARG1 "-f elf32")<br>    else()<br>        set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ARG1 "-f win32 -DPREFIX")<br>    endif()<br>endif()<br><br>I presume cygwin takes the UNIX path; but does elf64/elf32 link with cygwin<br>gcc compiled C++ code? I'm afraid it's been several years since I've used<br>cygwin.  Msys has been a much saner environment for so long.<br></font>_______________________________________________<br>x265-devel mailing list<br><a href="mailto:x265-devel@videolan.org">x265-devel@videolan.org</a><br>https://mailman.videolan.org/listinfo/x265-devel<br></blockquote></div><br></div></div></body></html>