Error "(null).dll was not found"

New to FreeBASIC? Post your questions here.
Post Reply
Iczer
Posts: 99
Joined: Jul 04, 2017 18:09

Error "(null).dll was not found"

Post by Iczer »

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)?..
srvaldez
Posts: 3379
Joined: Sep 25, 2005 21:54

Re: Error "(null).dll was not found"

Post by srvaldez »

this may be a silly question so please don't be offended, after restoring the dll's did you recompile your application?
dkl
Site Admin
Posts: 3235
Joined: Jul 28, 2005 14:45
Location: Germany

Re: Error "(null).dll was not found"

Post by dkl »

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:
> objdump -x myexe.exe
...
The Import Tables (interpreted .idata section contents)
...
DLL Name: KERNEL32.dll
...
DLL Name: msvcrt.dll
...
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).
Iczer
Posts: 99
Joined: Jul 04, 2017 18:09

Re: Error "(null).dll was not found"

Post by Iczer »

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!
Iczer
Posts: 99
Joined: Jul 04, 2017 18:09

Re: Error "(null).dll was not found"

Post by Iczer »

there was not pcre section (i think because it static library?) but culprit was sqlite dll actually:

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
so now I should deal with sqlite? It exist in "windows\system32" directory and registered with : \regsvr32.exe /s /n " & sSQLiteDLL_PathTo_Installed & "
Iczer
Posts: 99
Joined: Jul 04, 2017 18:09

Re: Error "(null).dll was not found"

Post by Iczer »

problem solved - as dkl said - LIBRARY "sqlite3.dll" section was missing from sqlite3.def file, so remake it, recompiled and error disappeared
thanks!
Post Reply