This is the mail archive of the
mailing list for the pthreas-win32 project.
Re: entry point strncpy_s could not be located
- From: Ross Johnson <Ross dot Johnson at homemail dot com dot au>
- To: pthreads-win32 at sourceware dot org
- Date: Wed, 17 Jul 2013 11:16:20 +1000
- Subject: Re: entry point strncpy_s could not be located
- References: <51E5D13B dot 2020208 at zeranoe dot com>
I've taken the other route and substituted strncpy() in place of
strncpy_s() and ignored any compiler warnings. A null byte is explicitly
added to ensure we comply with the [Linux] man page description that the
returned string shall be null terminated (for the case where strncpy
doesn't add one).
This change has been committed to both the SourceForge Pthreads4w Git
and sourceware.org Pthreads-win32 CVS repositories.
Apologies for not researching the original additions thoroughly.
On 17/07/2013 9:03 AM, Kyle Schwarz wrote:
I'm getting the following error while trying to run FFmpeg with
Windows XP using the latest version of pthreads-win32: "The procedure
entry point strncpy_s could not be located in the dynamic link library
Here is a little more information about the bug:
This is because of a change in the pthreads-w32 CVS. I encountered it
after I updated to GCC 4.8.1 but didn't realize anything was wrong
until I'd gotten x264 and FFmpeg built. Thankfully, none of the
aggregate libraries seem to be affected by pthreads doing this, so it
seems relatively benign. The binaries as distributed will work fine
on Vista and higher since the version of msvcrt.dll has the secure
API functions necessary. If WinXP is a target, pthreads needs a
That was posted by the user qyot27 at:
There is also a patch that he submitted that seems to fix the issue:
# For Windows XP users only:
sed -i 's/ -DMINGW_HAS_SECURE_API//' GNUmakefile
sed -i -e '60i#ifdef MINGW_HAS_SECURE_API' \
-e '61i#else\n strncpy(name, tp->name, len - 1);\n#endif'
sed -i -e '46i#ifdef MINGW_HAS_SECURE_API' \
-e '47i#else\n strncpy(name, tp->name, len - 1);\n#endif'
I would really apprciate any help on this, currently my FFmpeg builds
are useless to Windows XP users because I utilize pthread-w32.