What is the fix for "NMAKE: fatal error u1073"? - nmake

I am trying to install apr-1.4.5 in Windows. When I try the following,
nmake Makefile.win PREFIX="c:\Program Files\apr"
I get the following error:
NMAKE: fatal error u1073: Dont know how to make 'Makefile.win'
Does anyone know the reason for this and how to resolve this error?

To specify the name of the makefile you should use /f command line option:
nmake /f Makefile.win PREFIX="c:\Program Files\apr"
Regular nmake parameters are considered to be build targets - and there is no build target called Makefile.win which is what the error message was trying to tell you.

Related

How can we resolve error U1073: don't know how to make 'C:\WINCE600\public\common\oak\lib\ARMV4I\retail\certmod.lib'

I am getting following error after trying to build WinCE 6 OS image for ARM V4. After a search online roll-ups for ARMv4 is installed , still facing the issue.
Implemented suggestions
https://guruce.com/blogpost/windows-embedded-qfes-updates
http://www.friendlyarm.net/forum/topic/3115
SysgenMake /NOLOGO C:\Novus\dev01\OS\WinCE_6.0\OSDesigns\AtlasXL\Wince600\AtlasXL_ARMV4I\cesysgen\oak\target\ARMV4I\retail\certmod.dll
NMAKE : fatal error U1073: don't know how to make 'C:\WINCE600\public\common\oak\lib\ARMV4I\retail\certmod.lib'
Stop.
makefile.def: Invoked with predefined settings:
TARGETNAME: certmod
TARGETTYPE: DYNLINK
RELEASETYPE: OAK
TARGETLIBS: C:\WINCE600\public\common\oak\lib\ARMV4I\retail\certmod.lib C:\Novus\dev01\OS\WinCE_6.0\OSDesigns\AtlasXL\Wince600\AtlasXL_ARMV4I\cesysgen\sdk\lib\ARMV4I\retail\crypt32.lib C:\WINCE600\public\common\oak\lib\ARMV4I\retail\evgen.lib C:\Novus\dev01\OS\WinCE_6.0\OSDesigns\AtlasXL\Wince600\AtlasXL_ARMV4I\cesysgen\sdk\lib\ARMV4I\retail\coredll.lib
SOURCELIBS:
DEFFILE: C:\WINCE600\public\common\oak\lib\ARMV4I\retail\certmod.def
EXEENTRY: mainWCRTStartup
DLLENTRY: _DllMainCRTStartup
makefile.def: Including C:\WINCE600\public\common\oak\misc\Sources.default
makefile.def: BUILDROOT is C:\WINCE600\public\common\cesysgen
makefile.def: Including C:\WINCE600\PUBLIC\COMMON\CESYSGEN\sources
makefile.def: Including C:\WINCE600\public\common\oak\misc\Sources.CE
Directory: C:\WINCE600\PUBLIC\COMMON\CESYSGEN
TARGETNAME: certmod
makefile.def: Including C:\WINCE600\public\common\oak\misc\sources.ReleaseType_OAK
NMAKE : fatal error U1077: 'SysgenMake' : return code '0x2'
Stop.
Help me out in resolving the issue.
I believe this error is a result of infamous BUILD AND SYSGEN option available with WEC6 build commands, see https://guruce.com/blogpost/how-to-remove-the-demonic-build-and-sysgen-commands-from-platform-builder-for-windows-embed for details.
Please reinstall platform builder and NEVER EVER DO A BUILD AND SYSGEN.

How to find dwrite_2.h when compile gvim

When I compile gvim on win10 using Mingw64, a problem came.
gui_dwrite.cpp:42:23: fatal error: dwrite_2.h: No such file or directory
# include <dwrite_2.h>
^
compilation terminated.
mingw32-make: *** [Make_cyg_ming.mak:970: gobji686/gui_dwrite.o] Error 1
But dwrite_2.h in C:\MinGW\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\mingw64\x86_64-w64-mingw32\include, what can I do?
Thank firstly!!!
This issue seems related to the COLOR_EMOJI option though I haven't verified this. Try adding this option to your build settings:
COLOR_EMOJI=no
Here is the referenced information:
https://groups.google.com/forum/#!topic/vim_dev/WxqcR2Z_3hI
https://github.com/vim/vim/pull/2440

Missing variable FLTK_FLUID_EXECUTABLE

While compiling ITKSNAP using ITK,VTK and FLTK on my computer(Windows 7 and Microsft visual studio 2012) shows following error:
CMake Error: Error required internal CMake variable not set, cmake may be not be built correctly.
Missing variable is:
FLTK_FLUID_EXECUTABLE
CMake Error at CMakeLists.txt:570 (ITK_DISABLE_FLTK_GENERATED_WARNINGS):
Unknown CMake command "ITK_DISABLE_FLTK_GENERATED_WARNINGS".
I don't know how to link fluid executable.
Please suggest some solution.

CMake finds the correct library, but VC++ attempts to link with something else

I have a CMake module to locate FreeGLUT:
FIND_PATH(FREEGLUT_INCLUDE_DIR NAMES GL/freeglut.h)
FIND_LIBRARY(FREEGLUT_LIBRARY NAMES freeglut freeglut_static)
SET(FREEGLUT_LIBRARIES ${FREEGLUT_LIBRARY})
SET(FREEGLUT_INCLUDE_DIRS ${FREEGLUT_INCLUDE_DIR})
INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(FreeGLUT DEFAULT_MSG FREEGLUT_LIBRARY FREEGLUT_INCLUDE_DIR)
MARK_AS_ADVANCED(FREEGLUT_INCLUDE_DIR FREEGLUT_LIBRARY)
It works fine and locates freeglut_static.lib when I generate NMake Makefiles on Windows. I'm attempting to statically link FreeGLUT into my DLL:
FIND_PACKAGE(FreeGLUT REQUIRED)
ADD_LIBRARY(vti SHARED ${VTI_SOURCES})
ADD_DEFINITIONS("-DBUILD_VTI=1 -DFREEGLUT_STATIC=1")
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${FREEGLUT_INCLUDE_DIRS})
TARGET_LINK_LIBRARIES(vti ${FREEGLUT_LIBRARIES})
My source code builds correctly, but when it gets to the linking stage, VC++ fails with:
LINK : fatal error LNK1104: cannot open file 'freeglut.lib'
Which is strange since freeglut.lib isn't mentioned anywhere that I can see in the generated NMake makefiles. It should be trying to link with freeglut_static.lib, which CMake locates and sets in FREEGLUT_LIBRARIES.
What might be causing this?
This is caused with pragma directives in FreeGLUT code (see freeglut_std.h). Using FREEGLUT_STATIC should really fix that for you, but I think you should pass it to CMake without quotes: ADD_DEFINITIONS(-DBUILD_VTI -DFREEGLUT_STATIC)

Problem in Cross-Compiling libSDL for MIPS Platform

I was trying to compile libSDL-1.2.14 for my mips platform.
But it was not successful.
These were the steps that I tried out :
export PATH=/opt/mips-4.3/bin:$PATH
Went inside the libSDL-1.2.14 source folder.
Gave a "./configure --prefix=/usr/local/SDL_Lib --host=mips-linux-gnu"
Executed the "make" command
This was the error received :
cc1: warning: include location
"/usr/include" is unsafe for
cross-compilation
./src/audio/dma/SDL_dmaaudio.c: In
function 'DMA_WaitAudio':
./src/audio/dma/SDL_dmaaudio.c:167:
error: can't find a register in class
'COP3_REGS' while reloading 'asm'
./src/audio/dma/SDL_dmaaudio.c:167:
error: 'asm' operand has impossible
constraints make: *
[build/SDL_dmaaudio.lo] Error 1
But then i reconfigured the make file by giving the following commands :
make clean
./configure --prefix=/usr/local/SDL_Lib --host=mips-linux-gnu CPPFLAGS=-I/opt/mips-4.3/mips-linux-gnu/libc/usr/include/
make
NOTE : /opt/mips-4.3/mips-linux-gnu/libc/usr/include/ - This is the path where you can locate the select.h file for the mips Platform.
It contains the definitions of the macros FD_ZERO and FD_SET.
Still I am getting the same error.
cc1: warning: include location
"/usr/include" is unsafe for
cross-compilation
./src/audio/dma/SDL_dmaaudio.c: In
function 'DMA_WaitAudio':
./src/audio/dma/SDL_dmaaudio.c:167:
error: can't find a register in class
'COP3_REGS' while reloading 'asm'
./src/audio/dma/SDL_dmaaudio.c:167:
error: 'asm' operand has impossible
constraints make: *
[build/SDL_dmaaudio.lo] Error 1
Please help me with some valuable pointers.
Thanks,
Sen
First, don't set the path to the cross-compiler as the first part of your PATH, set it as last:
export PATH=$PATH:<path to cross-compiler>
It's safer this way. Second, run ./configure --help to get all the options. What that error message would say if it was smarter is the following:
You're trying to cross-compile since you're setting the --host flag
But you're not changing any of the other options for where to find includes and libs for the target environment
I'm going to use /usr/include by default
But that's for the host system which will not work when cross-compiling
Check what other configure options you need to set to tell the configure script where to find the .h files (includes) and the libraries for your target. These usually come with the cross-compiler that you download. Also, you should probably set the CROSS_COMPILE environment variable to the cross-compiler prefix before running configure. The prefix is the part before gcc in a cross-compiler, assuming you're using GCC as your cross-compiler.

Resources