I'm tried to compile latest pcre (v 8.41) and libxml2 (v 2.9.7) libs to replace my current {pcre (v 8.39) and libxml2 (v 2.9.3)} with mingw-w64 (x86_64-7.2.0-win32-seh-rt_v5-rev1) and CMake. Somehow it got successful.
new pcre libs got pretty same size, but libxml2 become much smaller.
I replaced original libs with fresh-baked and fbide compiled my application without any complains.
But after i run my application, I got "This application failed to start because (null).dll was not found." error.
Trying to debug i returned original libs back, but runtime error persist. How I can debug this problem? I think some path was changed, so at compile time everything OK, but at runtime cannot find some library... but why library name is (null)?..
Error "(null).dll was not found"
Re: Error "(null).dll was not found"
this may be a silly question so please don't be offended, after restoring the dll's did you recompile your application?
Re: Error "(null).dll was not found"
I think I saw this before with libfoo.dll.a import libraries when the LIBRARY "foo.dll" part was missing from the .def file passed to dlltool. In that case it depends on how the DLL and its import library (if any) are built.
You could try running objdump (from MinGW-w64 toolchain) on the executable:
You could try running objdump (from MinGW-w64 toolchain) on the executable:
It should list the DLL dependencies. Maybe it's possible to see one of pcre or libxml2 (while the other is (null).dll, unless both are (null).dll).> objdump -x myexe.exe
...
The Import Tables (interpreted .idata section contents)
...
DLL Name: KERNEL32.dll
...
DLL Name: msvcrt.dll
...
Re: Error "(null).dll was not found"
yes - I even tried to recompile with "-g" option and debug, but got "No debug info found. Compile with the -g option."
dkl
I will try that, thanks!
dkl
I will try that, thanks!
Re: Error "(null).dll was not found"
there was not pcre section (i think because it static library?) but culprit was sqlite dll actually:
so now I should deal with sqlite? It exist in "windows\system32" directory and registered with : \regsvr32.exe /s /n " & sSQLiteDLL_PathTo_Installed & "
Code: Select all
DLL Name: (null)
vma: Hint/Ord Member-Name Bound-To
138cd0 31 sqlite3_busy_timeout
138ce8 35 sqlite3_close
138cf8 41 sqlite3_column_bytes16
138d12 42 sqlite3_column_count
138d2a 56 sqlite3_column_text
138d40 57 sqlite3_column_text16
138d58 89 sqlite3_errmsg
138d6a 90 sqlite3_errmsg16
138d7e 91 sqlite3_errstr
138d90 92 sqlite3_exec
138da0 98 sqlite3_finalize
138db4 99 sqlite3_free
138dc4 100 sqlite3_free_table
138dda 104 sqlite3_get_table
138dee 106 sqlite3_initialize
138e04 119 sqlite3_mprintf
138e16 127 sqlite3_open
138e26 129 sqlite3_open_v2
138e38 137 sqlite3_prepare_v2
138e4e 145 sqlite3_reset
138e5e 183 sqlite3_step
Re: Error "(null).dll was not found"
problem solved - as dkl said - LIBRARY "sqlite3.dll" section was missing from sqlite3.def file, so remake it, recompiled and error disappeared
thanks!
thanks!