Hello, >Certainly there is a way to compile natively. Even if for some >reason, for example, due to lack of disk space, it is not possible >to compile right on the target hardware, you can always compile in >an emulated environment.
Because there is no gcc tools on the target environment.(Or maybe it is exist but we could not get it.) >If you nevertheless insist on cross-compiling, which is, as >outlined above, is not supported, the right approach would be to >check all the configure tests affected by your cross-compilation >changes to nginx configure, notably all feature tests with >"ngx_feature_run=yes" and all sizeof tests. Proper check would be >to obtain the test binary as produced for the test by nginx >configure and run it on the target system, and then make sure that >results produced by your patched configure match the results from >running test binaries on the target system. I have try to set ngx_feature_run to no to make sendfile() and sendfile64() work, but then the server will response “ERR_CONTENT_LENGTH_MISMATCH”. And try to set ngx_size to 8, but it didn’t take effect. Do you mean compiling all the test program and run on the target system? 发送自 Windows 10 版邮件<https://go.microsoft.com/fwlink/?LinkId=550986>应用 发件人: Maxim Dounin<mailto:mdou...@mdounin.ru> 发送时间: 2021年6月7日 20:21 收件人: nginx@nginx.org<mailto:nginx@nginx.org> 主题: Re: 回复: Server mp4 file larger than 2GB on 32bit system Hello! On Mon, Jun 07, 2021 at 02:44:45AM +0000, 王 静凯 wrote: > >What does "./configure" output show? Are you running configure on > >the target system, or tried to cross-compile nginx? > > >It looks like for some reason nginx wasn't able to find out how to > >instruct your system to use 64-bit off_t. The most likely reason > >I can think of is an attempt to cross-compile nginx. Note that > >cross-compiling is not supported and not going to work. The most > >simple and the only supported solution would be to compile nginx > >natively. > > Yes,I am doing a cross compile. > There is no way to compile natively. Certainly there is a way to compile natively. Even if for some reason, for example, due to lack of disk space, it is not possible to compile right on the target hardware, you can always compile in an emulated environment. If you nevertheless insist on cross-compiling, which is, as outlined above, is not supported, the right approach would be to check all the configure tests affected by your cross-compilation changes to nginx configure, notably all feature tests with "ngx_feature_run=yes" and all sizeof tests. Proper check would be to obtain the test binary as produced for the test by nginx configure and run it on the target system, and then make sure that results produced by your patched configure match the results from running test binaries on the target system. -- Maxim Dounin https://apac01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmdounin.ru%2F&data=04%7C01%7C%7Ccb7a3aacf6d64cd57b7308d929aeb587%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637586652621238161%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=tAoWBa34oFmmnScsTA0fyDxy8BoHGSz2KfNXpCTBdj4%3D&reserved=0 _______________________________________________ nginx mailing list nginx@nginx.org https://apac01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmailman.nginx.org%2Fmailman%2Flistinfo%2Fnginx&data=04%7C01%7C%7Ccb7a3aacf6d64cd57b7308d929aeb587%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637586652621238161%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=3CJlsPi98G7zGF4OusrtJxly16VGfwLV4QNVHKlgwqI%3D&reserved=0
_______________________________________________ nginx mailing list nginx@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx