Hi Edward.
I have a the file
python27.lib
in C:\Python27\libs.
I still don't have a clue whats wrong.
Could it be something with Visual C++ 2005 Express Edition?
I am not sure the installation went correct, since when I do
Windows Start button->Microsoft Windows SDK v7.1->Visual Studio
Registration->Windows SDK Configuration Tool
Change "Installed Windows SDK Versions:" from v7.1 to 8.0
I get an error:
"Your system does not have Visual Studio 2005 or Visual Studio 2008
installed"
Best
Troels Emtekær Linnet
2013/5/11 Edward d'Auvergne <edward@xxxxxxxxxxxxx>
Hi,
We should be able to get to the bottom of the problem and make this
run. But setting up the development platform on MS Windows of the
MSVS compiler and Python is always painful. Because of this I set up
a virtual machine image of Windows 2000 with MSVS 2005 many years ago
and have been using this to build the Windows pre-compiled relax
distributions (http://www.nmr-relax.com/download.html#MS_Windows) ever
since. I have updated Python to version 2.7 on this vm, but the
compiler setup works and I don't want to have to set up another
environment.
From the error messages, it is clear that this 2012 version of the
Microsoft compiler catches more problems in the code. The warning:
c:\python27\github\relax_disp\target_functions\relax_fit.c(137) :
warning C4700: uninitialized local variable 'params' used
may be an issue. I think this is harmless, but you could try to
comment out line 137 of that file (the call to the exponential()
function) and see if that makes a difference. This is inside the
dfunc() function which is both non-functional and not used. This is
supposed to return the gradient of the exponential curve but is not
implemented yet as simplex optimisation, which does not require the
gradient or Hessian, was sufficient for finding the solution for this
2 parameter problem.
From these new messages, it is clear that the Python.h file is being
found. The include /I"C:\Python27\Scripts\..\include" is interesting
as this implies that sys.prefix as seen by scons is set to
"C:\Python27\Scripts\..". Although strange, this may not be an issue.
But when you run Python, you see sys.prefix as "C:\Python27".
Hmmmm.....
Maybe the problem is not that Python.h cannot be found, but that the
python32.lib file cannot be found. Can you see this file in your
C:\Python27\libs\ directory? You can see that this is used in the
linking command:
link /nologo /dll /out:target_functions\relax_fit.pyd
/implib:target_functions\relax_fit.lib /LIBPATH:C:\Python27\libs
target_functions\c_chi2.obj target_functions\exponential.obj
target_functions\relax_fit.obj
On Windows, there should be a python32.lib file in the LIBPATH.
Regards,
Edward
On 11 May 2013 12:41, Troels Emtekær Linnet <tlinnet@xxxxxxxxx> wrote:
Hi Edward.
Sigh.
I have looked around for
"error LNK2019: unresolved external symbol"
and it seems that many experience the problem.
But there don't seem to be an universal explanation/bug fix.
And if I find a thing I would like to try, I really don't know where
to
start. ? :-)
- "In Visual-Studio most linkage problems are related to forget
adding
.cpp
files."
- Url 2, Url3, Url4, Url5, Url6
In the last Url, there is this solution:
---
in the Project properties, set the Platform Toolset to VS2008 (v90)
and
the
correct directories depending on your installation (ie : include =>
C:\Program Files (x86)\Windows Kits\8.0\Include\shared;C:\Program
Files
(x86)\Windows Kits\8.0\Include\um;$(IncludePath) and Libraries =>
C:\Program
Files (x86)\Windows Kits\8.0\Lib\win8\um\x64;$(LibraryPath)). Don't
forget
to set the .lib in Link entries.
---
After installation of Visual Studio 2012, I do have the folder:
C:\Program Files (x86)\Windows Kits\8.0
I have attached a text file, how I have installed until now.
I hope we can break this "annoying behaviour?"
Where should I look, if .ccp files is added ??
Best
Troels
------------------------
C:\Python27\github\relax_disp>scons clean_all
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
clean_manual_files(["manual_clean"], [])
##########################################
# Cleaning up the temporary manual files #
##########################################