Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

undefined reference to `_imp__NimMain' #8

Open
retsyo opened this issue Jan 6, 2017 · 0 comments
Open

undefined reference to `_imp__NimMain' #8

retsyo opened this issue Jan 6, 2017 · 0 comments

Comments

@retsyo
Copy link

retsyo commented Jan 6, 2017

I am using msys2+mingw32 on Win7 64 bits. I modified pmgen.py (https://github.com/retsyo/nim-pymod/blob/master/pmgen.py) in 2 aspects

  1. use raw string in nim.cfg and pmgenSRC_incl.nim so that r"r:\someplace" for nim on windows is a valid pathname
  2. judge getvar('LIBS') which can solve the problem in https://github.com/jboy/nim-pymod/issues/5

however, during compiling

Caught OSError([Error 2] )
Traceback (most recent call last):
File "E:/msys64/home/LOVLJIDY/_nim/nim-pymod/pmgen.py", line 538, in
main()
File "E:/msys64/home/LOVLJIDY/_nim/nim-pymod/pmgen.py", line 173, in main
nim_modfiles, pminc_basename, python_exe_name)
File "E:/msys64/home/LOVLJIDY/_nim/nim-pymod/pmgen.py", line 400, in compile_generated_nim_wrappers
subprocess.check_call(make_command)
File "E:\prg\py\Anaconda2_32\lib\subprocess.py", line 541, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['make', '-f', 'Makefile']' returned non-zero exit status 2

I traced it down by

$ cd pmgen/
$ make
nim compile pmgenhw_wrap.nim
Hint: used config file 'E:\prg\nim\nim-0.15.2_x32\config\nim.cfg' [Conf]
Hint: used config file 'r:\pmgen\nim.cfg' [Conf]
Hint: used config file 'r:\pmgen\pmgenhw_wrap.nim.cfg' [Conf]
Hint: system [Processing]
...
Hint: gcc.exe -shared -o R:\pmgen\hw.so nimcache\pymod_docstrings.o nimcache\stdlib_macros.o nimcache\pymod_pymod.o nimcache\greeting.o nimcache\pymod_iteratezipdefs.o nimcache\pymod_pyarrayiters.o nimcache\pymod_ptrutils.o nimcache\pymod_pyarrayobjecttype.o nimcache\pymod_pyarrayflags.o nimcache\pymod_pyarrayenums.o nimcache\pymod_pyarraydescrtype.o nimcache\pymod_cnpytypes.o nimcache\pymod_nptypes.o nimcache\pymod_pyarrayobject.o nimcache\pymod_membrain.o nimcache\pymod_pyobject.o nimcache\stdlib_typetraits.o nimcache\pymod_miscutils.o nimcache\stdlib_algorithm.o nimcache\stdlib_math.o nimcache\stdlib_parseutils.o nimcache\stdlib_strutils.o nimcache\stdlib_system.o nimcache\pmgenhw_wrap.o nimcache\pyarraydescrtype_c.o nimcache\pyarrayobject_c.o nimcache\pyobject_c.o nimcache\pmgenhw_capi.o -O3 -lpython27 -fPIC [Exec]
nimcache\pmgenhw_capi.o:pmgenhw_capi.c:(.text+0x41): undefined reference to _imp__exportpy_greet' nimcache\pmgenhw_capi.o:pmgenhw_capi.c:(.text+0x192): undefined reference to _imp__NimMain'
collect2.exe: error: ld returned 1 exit status
Error: execution of an external program failed: 'gcc.exe -shared -o R:\pmgen\hw.so nimcache\pymod_docstrings.o nimcache\stdlib_macros.o nimcache\pymod_pymod.o nimcache\greeting.o nimcache\pymod_iteratezipdefs.o nimcache\pymod_pyarrayiters.o nimcache\pymod_ptrutils.o nimcache\pymod_pyarrayobjecttype.o nimcache\pymod_pyarrayflags.o nimcache\pymod_pyarrayenums.o nimcache\pymod_pyarraydescrtype.o nimcache\pymod_cnpytypes.o nimcache\pymod_nptypes.o nimcache\pymod_pyarrayobject.o nimcache\pymod_membrain.o nimcache\pymod_pyobject.o nimcache\stdlib_typetraits.o nimcache\pymod_miscutils.o nimcache\stdlib_algorithm.o nimcache\stdlib_math.o nimcache\stdlib_parseutils.o nimcache\stdlib_strutils.o nimcache\stdlib_system.o nimcache\pmgenhw_wrap.o nimcache\pyarraydescrtype_c.o nimcache\pyarrayobject_c.o nimcache\pyobject_c.o nimcache\pmgenhw_capi.o -O3 -lpython27 -fPIC '
make: *** [Makefile:9: hw.so] Error 1

``

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant