From: nitnit <ni...@gm...> - 2012-09-16 06:13:17
|
Jordi Gutiérrez Hermoso wrote > > On Fri, Sep 14, 2012 at 3:44 PM, Jordi Gutiérrez Hermoso wrote: > Nitzan, can you please publish the sources you've used to build MinGW? > It's a little worrisom that we're in effect distributing GPL-violating > MinGW binaries. > Attached are the patches I have used for octaveforge packages in order to build them on mingw. Be aware that most of them are simply workarounds to overcome mingw environment failures to identify libs. I hope that I will be able to fix some of these on next mingw octave build. Nitzan ************************************************************************** ad-1.0.6 ************************************************************************** --- ad-1.0.6.tar.gz\ad-1.0.6\src\ov-grad.cc Sun Jun 07 13:44:44 2009 +++ ad-1.0.6_patched.tar.gz\ad-1.0.6\src\ov-grad.cc Sat Jan 28 09:11:17 2012 @@ -71,10 +71,12 @@ void octave_gradient::print (std::ostream& os, bool pr_as_read_syntax) const { - x ().print_with_name (os, "value", true); +//patched for ov.h in 0ctave-3.6.0 x ().print_with_name (os, "value", true); + x ().print_with_name (os, "value"); // print (partial) derivative(s), // following convention i-th row = nabla(x_i)T - jacobian ().print_with_name (os, "(partial) derivative(s)", true); +//patched for ov.h in 0ctave-3.6.0 jacobian ().print_with_name (os, "(partial) derivative(s)", true); + jacobian ().print_with_name (os, "(partial) derivative(s)"); } octave_value_list octave_gradient::dotref (const octave_value_list& idx) ************************************************************************** communications-1.1.1 ************************************************************************** --- communications-1.1.1.tar.gz\communications\src\Makefile Tue May 08 15:06:50 2012 +++ communications-1.1.1_patched.tar.gz\communications\src\Makefile Tue Jun 12 23:00:56 2012 @@ -1,6 +1,7 @@ sinclude Makeconf HDF5_LIBS := $(shell grep "\#define OCTAVE_CONF_HDF5_LIBS" $(shell $(MKOCTFILE) -p OCTINCLUDEDIR)/oct-conf.h | sed 's/^.*LIBS //;s/"//g' ) +MY_HDF5_LIBS = libhdf5 GALOISTARGET = gf.oct GALOISSOURCES = galois.cc galois-def.cc galoisfield.cc gf.cc \ @@ -25,7 +26,7 @@ @$(INSTALL) -d $(DESTDIR)$(MPATH)/comm $(GALOISTARGET) : $(GALOISOBJECTS) - $(MKOCTFILE) $(MOFLAGS) $(GALOISOBJECTS) -o $@ $(HDF5_LIBS) + $(MKOCTFILE) -l$(MY_HDF5_LIBS) $(MOFLAGS) $(GALOISOBJECTS) -o $@ $(HDF5_LIBS) $(GALOISOBJECTS): $(GALOISHEADERS) ************************************************************************** java-1.2.9 (thanks to Michael Goffioul for that patch) ************************************************************************** --- java-1.2.9.tar\java-1.2.9.tar\java\src\Makefile Sat Apr 28 20:52:02 2012 +++ java-1.2.9_patched.tar\java-1.2.9.tar\java\src\Makefile Sat Aug 04 09:43:41 2012 @@ -15,6 +15,7 @@ JAVA_CLASSES = $(patsubst %.java, %.class, $(JAVA_SOURCES)) JAVA_RSC = $(addprefix $(RSCDIR)/, $(IMAGES)) +HAVE_JAVA = yes ifeq ($(HAVE_JAVA),yes) all: $(PROGS) @if test -f" FILES"; then \ @@ -36,9 +37,9 @@ __java__.oct: __java__.cc __java__.h if [ "X$(JAVA_ARCH)X" = "XX" ]; then \ - $(MKOCTFILE) -DJAVAPKG_BUILD $(JAVA_INCS) -o $@ __java__.cc $(JAVA_LIBS); \ + $(MKOCTFILE) -Wl,--kill-at -DJAVAPKG_BUILD $(JAVA_INCS) -o $@ __java__.cc $(JAVA_LIBS); \ else \ - $(MKOCTFILE) -DJAVAPKG_BUILD -DJAVA_ARCH=\\\"$(JAVA_ARCH)\\\" -DJAVA_HOME=\\\"$(JAVA_HOME)\\\" $(JAVA_INCS) -o $@ __java__.cc $(JAVA_LIBS); \ + $(MKOCTFILE) -Wl,--kill-at -DJAVAPKG_BUILD -DJAVA_ARCH=\\\"$(JAVA_ARCH)\\\" -DJAVA_HOME=\\\"$(JAVA_HOME)\\\" $(JAVA_INCS) -o $@ __java__.cc $(JAVA_LIBS); \ fi octave.jar: $(JAVA_CLASSES) ************************************************************************** linear-algebra-2.2.0 ************************************************************************** --- linear-algebra-2.2.0.tar\linear-algebra-2.2.0.tar\linear-algebra\src\Makefile Tue Jan 10 21:00:16 2012 +++ linear-algebra-2.2.0_patched.tar\linear-algebra-2.2.0.tar\linear-algebra\src\Makefile Tue Jun 12 22:45:52 2012 @@ -4,7 +4,8 @@ MKOCTFILE = mkoctfile endif -LAPACK_LIBS := $(shell mkoctfile -p LAPACK_LIBS) +#LAPACK_LIBS := $(shell mkoctfile -p LAPACK_LIBS) +LAPACK_LIBS := -llapack DEFINES = -DHAVE_CONFIG_H -Wall GSVD_OBJECTS = gsvd.o dbleGSVD.o CmplxGSVD.o ************************************************************************** ocs-0.1.3 ************************************************************************** --- ocs-0.1.3_svn20120128.tar.gz\ocs\PKG_ADD Sat Aug 06 15:32:14 2011 +++ ocs-0.1.3_svn20120128_patched.tar.gz\ocs\PKG_ADD Sat Jan 28 18:24:23 2012 @@ -1,10 +1,12 @@ dirlist = {"utl", "asm", "tst", "nls", "prs", "sbn"}; -dirname = fileparts (canonicalize_file_name (mfilename ("fullpath"))); +% dirname = fileparts (canonicalize_file_name (mfilename ("fullpath"))); +dirname = fileparts (mfilename ("fullpath")); if (! exist (fullfile (dirname, "inst"), "dir")) ## Run this if the package is installed for ii=1:length (dirlist) - addpath ( [ dirname "/../" dirlist{ii}],"-end") +% addpath ( [ dirname "/../" dirlist{ii}],"-end") + addpath (fullfile(dirname,dirlist{ii}),"-end") endfor else ## Run this if we are testing the package without installation --- ocs-0.1.3_svn20120128.tar.gz\ocs\PKG_DEL Sat Aug 06 15:32:14 2011 +++ ocs-0.1.3_svn20120128_patched.tar.gz\ocs\PKG_DEL Sat Jan 28 18:02:54 2012 @@ -1,14 +1,18 @@ dirlist = {"utl", "asm", "tst", "nls", "prs", "sbn"}; -dirname = fileparts (canonicalize_file_name (mfilename ("fullpath"))); +% dirname = fileparts (canonicalize_file_name (mfilename ("fullpath"))); +[basename,dirname] = fileparts (canonicalize_file_name (mfilename ("fullpath"))); for ii=1:length (dirlist) if (! exist (fullfile (dirname, "inst"), "dir")) ## Run this if the package is installed - rmpath ( [ dirname "/../" dirlist{ii}]) - else +% rmpath ( [ dirname "/../" dirlist{ii}]) + rmpath ( fullfile(basename,dirlist{ii})) + else ## Run this if we are testing the package without installation - rmpath ([ dirname "/inst/" dirlist{ii}]) - rmpath ([ dirname "/src/"]) +% rmpath ([ dirname "/inst/" dirlist{ii}]) + rmpath ( fullfile(basename,"inst",dirlist{ii}) ) +% rmpath ([ dirname "/src/"]) +% rmpath (fullfile(basename,"src"])) end end ************************************************************************** optim-1.2.0 ************************************************************************** --- optim-1.2.0.tar.gz\optim-1.2.0\src\Makefile Tue Jun 12 16:42:55 2012 +++ optim-1.2.0_patched.tar.gz\optim-1.2.0\src\Makefile Sat Aug 04 11:27:03 2012 @@ -1,9 +1,11 @@ MKOCTFILE ?= mkoctfile ifndef LAPACK_LIBS -LAPACK_LIBS := $(shell $(MKOCTFILE) -p LAPACK_LIBS) +# LAPACK_LIBS := $(shell $(MKOCTFILE) -p LAPACK_LIBS) +LAPACK_LIBS := -lliblapack endif -OCTAVE_LAPACK_LIBS := $(shell $(MKOCTFILE) -p LAPACK_LIBS) +# OCTAVE_LAPACK_LIBS := $(shell $(MKOCTFILE) -p LAPACK_LIBS) +OCTAVE_LAPACK_LIBS := -lliblapack # reported necessary for Apple's VecLib framework by Carlo de Falco # <car...@gm...> ifndef BLAS_LIBS ************************************************************************** optiminterp-0.3.4_svn20120128 ************************************************************************** added src/configure (taken from an older version) - proper setting of LAPACK_LIBS in the makefile or in mingw environment will solve the problem too ************************************************************************** sockets-1.0.8 ************************************************************************** --- sockets-1.0.8.tar.gz\sockets\src\Makefile Tue Jan 10 21:05:12 2012 +++ sockets-1.0.8_patched.tar.gz\sockets\src\Makefile Sat Aug 04 11:35:39 2012 @@ -14,7 +14,8 @@ all: $(OCT) %.oct: %.cc - mkoctfile $(VFLAGS) -s $< + mkoctfile -L/C/Octave/Octave3.6.0_gcc4.6.2/mingw32/lib $(VFLAGS) -s -lws2_32 $< +# mkoctfile $(VFLAGS) -s $< test: $(OCT) test_octave_sockets ************************************************************************** strings-1.1.0 ************************************************************************** --- strings-1.1.0.tar\strings-1.1.0.tar\strings\src\Makefile Fri Mar 16 21:30:38 2012 +++ strings-1.1.0_patched.tar\strings-1.1.0.tar\strings\src\Makefile Wed Jun 13 00:21:33 2012 @@ -3,7 +3,7 @@ all: pcregexp.oct %.oct: %.cc - $(MKOCTFILE) $< + $(MKOCTFILE) -lpcre $< clean: rm -f *.o octave-core core *.oct *~ ************************************************************************** video-1.0.2 ************************************************************************** note: src/AVHandler.cc has been taken from recent svn --- video-1.0.2.tar\video-1.0.2.tar\video-1.0.2\src\AVHandler.h Fri May 08 16:17:36 2009 +++ octaveforge\video-1.0.2_patched.tar\video-1.0.2.tar\video-1.0.2\src\AVHandler.h Tue Aug 23 14:55:34 2011 @@ -27,8 +27,11 @@ #define VIDEO_OUTBUF_SIZE 200000 +// FIXME: should define -D__STDC_CONSTANT_MACROS instead of the following #define INT64_C +#define UINT64_C #define __STDC_CONSTANT_MACROS + #include <errno.h> extern "C" { #if defined (HAVE_FFMPEG_AVFORMAT_H) --- video-1.0.2.tar\video-1.0.2.tar\video-1.0.2\DESCRIPTION Fri May 08 16:17:36 2009 +++ video-1.0.2_patched.tar\video-1.0.2.tar\video-1.0.2\DESCRIPTION Tue Aug 23 14:30:55 2011 @@ -7,6 +7,6 @@ Description: Implements addframe, avifile, aviinfo, and aviread, using ffmpeg. (and approximately conforms to Matlab interface) Depends: octave (>= 2.9.12) Autoload: yes -SystemRequirements: ffmpeg +SystemRequirements: >=ffmpeg-0.7 License: BSD Url: http://octave.sf.net --- video-1.0.2.tar\video-1.0.2.tar\video-1.0.2\src\AVHandler.cc Fri May 08 16:17:36 2009 +++ video-1.0.2_patched.tar\video-1.0.2.tar\video-1.0.2\src\AVHandler.cc Tue Aug 23 14:53:46 2011 @@ -64,7 +64,7 @@ if (av_output->pb->buf_ptr) { while (write_frame() > 0) {} av_write_trailer(av_output); - if (url_fclose( av_output->pb ) < 0) + if (avio_close( av_output->pb ) < 0) (*out) << "AVHandler: cannot close output file" << std::endl; } av_free(av_output); @@ -94,8 +94,8 @@ AVHandler::setup_write() { av_register_all(); - AVOutputFormat *avifmt; - for (avifmt = first_oformat; avifmt != NULL; avifmt = avifmt->next) { + AVOutputFormat *avifmt = NULL; + while (NULL != (avifmt = av_oformat_next(avifmt))) { if (std::string(avifmt->name) == "avi") { break; } @@ -106,7 +106,7 @@ return -1; } - av_output = av_alloc_format_context(); + av_output = avformat_alloc_context(); if (!av_output) { (*out) << "AVHandler: Memory error allocating format context" << std::endl; return -1; @@ -127,11 +127,11 @@ } snprintf(av_output->filename, sizeof(av_output->filename), "%s", filename.c_str()); - snprintf(av_output->title, sizeof(av_output->title), "%s", title.c_str()); - snprintf(av_output->author, sizeof(av_output->author), "%s", author.c_str()); - snprintf(av_output->comment, sizeof(av_output->comment), "%s", comment.c_str()); + // FIXME: snprintf(av_output->title, sizeof(av_output->title), "%s", title.c_str()); + // FIXME: snprintf(av_output->author, sizeof(av_output->author), "%s", author.c_str()); + // FIXME: snprintf(av_output->comment, sizeof(av_output->comment), "%s", comment.c_str()); - if (url_fopen(&av_output->pb, filename.c_str(), URL_WRONLY) < 0) { + if (avio_open(&av_output->pb, filename.c_str(), URL_WRONLY) < 0) { (*out) << "AVHandler: Could not open \"" << filename << "\" for output" << std::endl; return -1; } @@ -162,7 +162,7 @@ } for (int i=0; i < av_input->nb_streams; i++) { - if (av_input->streams[i]->codec->codec_type == CODEC_TYPE_VIDEO) { + if (av_input->streams[i]->codec->codec_type == AVMEDIA_TYPE_VIDEO) { vstream = av_input->streams[i]; break; } @@ -173,7 +173,7 @@ } for (int i=0; i < av_input->nb_streams; i++) { - if (av_input->streams[i]->codec->codec_type == CODEC_TYPE_AUDIO) { + if (av_input->streams[i]->codec->codec_type == AVMEDIA_TYPE_AUDIO) { astream = av_input->streams[i]; break; } @@ -204,9 +204,9 @@ width = vstream->codec->width; height = vstream->codec->height; - title = av_input->title; - author = av_input->author; - comment = av_input->comment; + // FIXME: title = av_input->title; + // FIXME: author = av_input->author; + // FIXME: comment = av_input->comment; rgbframe = create_frame(PIX_FMT_RGB24); if (!rgbframe) return -1; @@ -258,7 +258,7 @@ if (c->coded_frame) pkt.pts = c->coded_frame->pts; if (c->coded_frame && c->coded_frame->key_frame) - pkt.flags |= PKT_FLAG_KEY; + pkt.flags |= AV_PKT_FLAG_KEY; /// XXX FIXME XXX does this ensure that the first frame is always a key frame? if (av_write_frame(av_output, &pkt) != 0) { @@ -296,7 +296,9 @@ (*out) << "AVHandler: Error seeking to " << target_timestamp << std::endl; return -1; } - cc->hurry_up = 1; + + // http://ffmpeg.org/pipermail/ffmpeg-cvslog/2011-April/035933.html + // FIXME: deprecated: cc->hurry_up = 1; // Flush stream buffers after seek avcodec_flush_buffers(cc); @@ -324,14 +326,14 @@ return -1; } - if (url_feof(av_input->pb)) { + if (av_input->pb->eof_reached) { (*out) << "AVHandler: EOF reached" << std::endl; } } // Decode the packet into a frame int frameFinished; - if (avcodec_decode_video(cc, frame, &frameFinished, packet.data, packet.size) < 0) { + if (avcodec_decode_video2(cc, frame, &frameFinished, &packet) < 0) { (*out) << "AVHandler: Error decoding video stream" << std::endl; av_free_packet(&packet); av_free(frame); frame = NULL; @@ -342,7 +344,9 @@ current_timestamp = (uint64_t)(vstream->cur_dts * AV_TIME_BASE * (long double)stream_time_base); } } - cc->hurry_up = 0; + + // http://ffmpeg.org/pipermail/ffmpeg-cvslog/2011-April/035933.html + // FIXME: deprecated: cc->hurry_up = 0; SwsContext *sc = sws_getContext(cc->width, cc->height, cc->pix_fmt, cc->width, cc->height, PIX_FMT_BGR24, @@ -361,8 +365,8 @@ (*out) << "Supported file formats:" << std::endl; av_register_all(); - AVOutputFormat *ofmt; - for (ofmt = first_oformat; ofmt != NULL; ofmt = ofmt->next) { + AVOutputFormat *ofmt = NULL; + while (NULL != (ofmt = av_oformat_next(ofmt))) { (*out) << ofmt->name << " "; } (*out) << std::endl << std::endl; @@ -375,7 +379,7 @@ AVCodec *codec; for (codec = av_codec_next(0); codec != NULL; codec = av_codec_next(codec)) { - if ((codec->type == CODEC_TYPE_VIDEO) && + if ((codec->type == AVMEDIA_TYPE_VIDEO) && (codec->encode)) { (*out) << codec->name << " "; } @@ -395,7 +399,7 @@ cc = vstream->codec; - cc->codec_type = CODEC_TYPE_VIDEO; + cc->codec_type = AVMEDIA_TYPE_VIDEO; cc->bit_rate = bitrate; cc->width = width; ************************************************************************** vrml-1.0.13 ************************************************************************** --- vrml-1.0.13.tar.gz\vrml\inst\vrml_browse.m Mon Apr 16 12:01:20 2012 +++ vrml-1.0.13_patched.tar.gz\vrml\inst\vrml_browse.m Sat Aug 04 12:02:47 2012 @@ -96,8 +96,11 @@ b_opt = [out_option," ",bop," ",best_option, " ",geo_option] ; -b_temp = "/tmp/octave_vrml_output.wrl" ; -b_log = " &> /tmp/octave_vrml_browser.log"; +if ~exist('tmp','dir') + mkdir('tmp') +end +b_temp = "tmp/octave_vrml_output.wrl" ; +b_log = " &> tmp/octave_vrml_browser.log"; new_browser = 0 ; # #################################### --- vrml-1.0.13.tar.gz\vrml\inst\vrml_thick_surf.m Mon Apr 16 12:01:20 2012 +++ vrml-1.0.13_patched.tar.gz\vrml\inst\vrml_thick_surf.m Sat Aug 04 12:13:42 2012 @@ -50,18 +50,18 @@ tran = 0 ; col = [0.3, 0.4, 0.9] ; smooth = creaseAngle = nan ; -nargin = nargin(); +nargs = nargin(); -if (nargin <= 1) || ischar(y), # Cruft to allow not passing x and y +if (nargs <= 1) || ischar(y), # Cruft to allow not passing x and y zz = x ; [R,C] = size (zz); xx = ones(R,1)*[1:C] ; yy = [1:R]'*ones(1,C) ; - if nargin >=3, + if nargs >=3, s = vrml_surf ( xx, yy, zz, y, z, varargin{:} ); return - elseif nargin >=2, + elseif nargs >=2, s = vrml_surf ( xx, yy, zz, y, varargin{:} ); return @@ -73,12 +73,12 @@ filename = "vrml_thick_surf" ; verbose = 0 ; -if nargin > 3, +if nargs > 3, opt1 = " tran col creaseAngle " ; opt0 = " smooth " ; - nargin -= 3 ; + nargs -= 3 ; read_options_old ; end -- View this message in context: http://octave.1599824.n4.nabble.com/My-patches-for-octaveforge-pkgs-Mingw-build-tp4644174.html Sent from the Octave - Dev mailing list archive at Nabble.com. |
From: c. <car...@gm...> - 2012-09-16 07:33:17
|
On 16 Sep 2012, at 08:13, nitnit wrote: > Jordi Gutiérrez Hermoso wrote >> >> On Fri, Sep 14, 2012 at 3:44 PM, Jordi Gutiérrez Hermoso wrote: >> Nitzan, can you please publish the sources you've used to build MinGW? >> It's a little worrisom that we're in effect distributing GPL-violating >> MinGW binaries. >> > > Attached are the patches I have used for octaveforge packages in order to > build them on mingw. Be aware that most of them are simply workarounds to > overcome mingw environment failures to identify libs. I hope that I will be > able to fix some of these on next mingw octave build. > > Nitzan > > ... > > ************************************************************************** > ocs-0.1.3 > ************************************************************************** > > --- ocs-0.1.3_svn20120128.tar.gz\ocs\PKG_ADD Sat Aug 06 15:32:14 2011 > +++ ocs-0.1.3_svn20120128_patched.tar.gz\ocs\PKG_ADD Sat Jan 28 18:24:23 > 2012 > @@ -1,10 +1,12 @@ > dirlist = {"utl", "asm", "tst", "nls", "prs", "sbn"}; > -dirname = fileparts (canonicalize_file_name (mfilename ("fullpath"))); > +% dirname = fileparts (canonicalize_file_name (mfilename ("fullpath"))); > +dirname = fileparts (mfilename ("fullpath")); > > if (! exist (fullfile (dirname, "inst"), "dir")) > ## Run this if the package is installed > for ii=1:length (dirlist) > - addpath ( [ dirname "/../" dirlist{ii}],"-end") > +% addpath ( [ dirname "/../" dirlist{ii}],"-end") > + addpath (fullfile(dirname,dirlist{ii}),"-end") > endfor > else > ## Run this if we are testing the package without installation > > --- ocs-0.1.3_svn20120128.tar.gz\ocs\PKG_DEL Sat Aug 06 15:32:14 2011 > +++ ocs-0.1.3_svn20120128_patched.tar.gz\ocs\PKG_DEL Sat Jan 28 18:02:54 > 2012 > @@ -1,14 +1,18 @@ > dirlist = {"utl", "asm", "tst", "nls", "prs", "sbn"}; > -dirname = fileparts (canonicalize_file_name (mfilename ("fullpath"))); > +% dirname = fileparts (canonicalize_file_name (mfilename ("fullpath"))); > +[basename,dirname] = fileparts (canonicalize_file_name (mfilename > ("fullpath"))); > > for ii=1:length (dirlist) > if (! exist (fullfile (dirname, "inst"), "dir")) > ## Run this if the package is installed > - rmpath ( [ dirname "/../" dirlist{ii}]) > - else > +% rmpath ( [ dirname "/../" dirlist{ii}]) > + rmpath ( fullfile(basename,dirlist{ii})) > + else > ## Run this if we are testing the package without installation > - rmpath ([ dirname "/inst/" dirlist{ii}]) > - rmpath ([ dirname "/src/"]) > +% rmpath ([ dirname "/inst/" dirlist{ii}]) > + rmpath ( fullfile(basename,"inst",dirlist{ii}) ) > +% rmpath ([ dirname "/src/"]) > +% rmpath (fullfile(basename,"src"])) > end > end I just checked in a slightly different version of your patch for OCS, could you please check if it works on mingw? Thanks! c. |
From: nitnit <ni...@gm...> - 2012-09-16 20:32:31
|
c.-2 wrote > > I just checked in a slightly different version of your patch for OCS, > could you please check if it works on mingw? > > Thanks! > c. > I forgot to mention that in order for the PKG_ADD/PKG_DEL to properly work, After 'pkg install' I had to manually move them from /lib/octave/packages/ocs-0.1.3/i686-pc-mingw32-api-v48+ to /share/octave/packages/ocs-0.1.3 I don't know how to do this as part of the install procedure. When I have done this to current svn ocs, pkg load seems to work properly but 'pkg unload ocs' produce the following messages: warning: rmpath: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\..\utl: not found warning: rmpath: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\..\asm: not found warning: rmpath: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\..\tst: not found warning: rmpath: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\..\nls: not found warning: rmpath: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\..\prs: not found warning: rmpath: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\..\sbn: not found pkg uninstall ocs produce the following warnings: warning: rmpath: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3: not found warning: rmpath: C:\Octave\Octave3.6.2_gcc4.6.2\lib\octave\packages\ocs-0.1.3\i686-pc-mingw32-api-v48+: not found warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\utl: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\asm: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\tst: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\nls: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\prs: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\sbn: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\utl: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\asm: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\tst: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\nls: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\prs: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\sbn: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\utl: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\asm: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\tst: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\nls: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\prs: No such file or directory warning: load_path: C:\Octave\Octave3.6.2_gcc4.6.2\share\octave\packages\ocs-0.1.3\sbn: No such file or directory Nitzan -- View this message in context: http://octave.1599824.n4.nabble.com/My-patches-for-octaveforge-pkgs-Mingw-build-tp4644174p4644201.html Sent from the Octave - Dev mailing list archive at Nabble.com. |
From: Jordi G. H. <jo...@oc...> - 2012-09-16 15:39:01
|
On 16 September 2012 02:13, nitnit <ni...@gm...> wrote: > > Jordi Gutiérrez Hermoso wrote >> >> On Fri, Sep 14, 2012 at 3:44 PM, Jordi Gutiérrez Hermoso wrote: >> Nitzan, can you please publish the sources you've used to build MinGW? >> It's a little worrisom that we're in effect distributing GPL-violating >> MinGW binaries. >> > > Attached are the patches I have used for octaveforge packages in order to > build them on mingw. Thank you very much! I'll be working on the next few days on incorporating as much as possible these patches into the Octave sources. - Jordi G. H. |
From: Olaf T. <i7...@t-...> - 2012-09-16 17:22:53
Attachments:
signature.asc
|
On Sun, Sep 16, 2012 at 11:38:55AM -0400, Jordi Gutiérrez Hermoso wrote: > On 16 September 2012 02:13, nitnit <ni...@gm...> wrote: > > > > Jordi Gutiérrez Hermoso wrote > >> > >> On Fri, Sep 14, 2012 at 3:44 PM, Jordi Gutiérrez Hermoso wrote: > >> Nitzan, can you please publish the sources you've used to build MinGW? > >> It's a little worrisom that we're in effect distributing GPL-violating > >> MinGW binaries. > >> > > > > Attached are the patches I have used for octaveforge packages in order to > > build them on mingw. > > Thank you very much! I'll be working on the next few days on > incorporating as much as possible these patches into the Octave > sources. > > - Jordi G. H. Please do not apply the patch for the optim package. I already commented on this on another thread. This change is not acceptable. Instead, the mingw-Octave package should be fixed so that mkoctfile returns the correct flags. Olaf -- public key id EAFE0591, e.g. on x-hkp://pool.sks-keyservers.net |
From: Jordi G. H. <jo...@oc...> - 2012-09-16 19:05:42
|
On 16 September 2012 13:22, Olaf Till <i7...@t-...> wrote: > On Sun, Sep 16, 2012 at 11:38:55AM -0400, Jordi Gutiérrez Hermoso wrote: >> On 16 September 2012 02:13, nitnit <ni...@gm...> wrote: >> > >> > Jordi Gutiérrez Hermoso wrote >> >> >> >> On Fri, Sep 14, 2012 at 3:44 PM, Jordi Gutiérrez Hermoso wrote: >> >> Nitzan, can you please publish the sources you've used to build MinGW? >> >> It's a little worrisom that we're in effect distributing GPL-violating >> >> MinGW binaries. >> >> >> > >> > Attached are the patches I have used for octaveforge packages in order to >> > build them on mingw. >> >> Thank you very much! I'll be working on the next few days on >> incorporating as much as possible these patches into the Octave >> sources. > > Please do not apply the patch for the optim package. I already > commented on this on another thread. This change is not > acceptable. I know better than to apply specific ad-hoc hacks. ;-) It's just good to know what the problems are that these hacks exhibit. Fixing the underlying issues is what I proposed to attack. - Jordi G. H. |
From: nitnit <ni...@gm...> - 2012-09-16 20:39:38
|
Olaf Till-2 wrote > > > Please do not apply the patch for the optim package. I already > commented on this on another thread. This change is not > acceptable. Instead, the mingw-Octave package should be fixed so that > mkoctfile returns the correct flags. > Olaf Till-2 wrote > > I just saw that the same inacceptable change was proposed for the > linear-algebra package and possibly also (?) for the optiminterp > package. The same problem should also exist in the packages (not > included in this patch) control, octgpr, and odepkg. One cannot just > unconditionally hardcode the lapack library to link to only because > the Mingw built of Octave can not handle a (hopefully) correct way to > specify it. These lines in the Makefiles regarding the lapack linkage > were introduced only recently into these packages after some > discussion and some thinking. > Regarding the missing LAPACK_LIB in octave mingw environment, I will try to fix that on next release (probably forthcoming 3.6.4) so hopefully these patches will not be required. Nitzan -- View this message in context: http://octave.1599824.n4.nabble.com/My-patches-for-octaveforge-pkgs-Mingw-build-tp4644174p4644202.html Sent from the Octave - Dev mailing list archive at Nabble.com. |
From: Olaf T. <i7...@t-...> - 2012-09-16 17:54:09
Attachments:
signature.asc
|
On Sun, Sep 16, 2012 at 07:22:36PM +0200, Olaf Till wrote: > On Sun, Sep 16, 2012 at 11:38:55AM -0400, Jordi Gutiérrez Hermoso wrote: > > On 16 September 2012 02:13, nitnit <ni...@gm...> wrote: > > > > > > Jordi Gutiérrez Hermoso wrote > > >> > > >> On Fri, Sep 14, 2012 at 3:44 PM, Jordi Gutiérrez Hermoso wrote: > > >> Nitzan, can you please publish the sources you've used to build MinGW? > > >> It's a little worrisom that we're in effect distributing GPL-violating > > >> MinGW binaries. > > >> > > > > > > Attached are the patches I have used for octaveforge packages in order to > > > build them on mingw. > > > > Thank you very much! I'll be working on the next few days on > > incorporating as much as possible these patches into the Octave > > sources. > > > > - Jordi G. H. > > Please do not apply the patch for the optim package. I already > commented on this on another thread. This change is not > acceptable. Instead, the mingw-Octave package should be fixed so that > mkoctfile returns the correct flags. > > Olaf I just saw that the same inacceptable change was proposed for the linear-algebra package and possibly also (?) for the optiminterp package. The same problem should also exist in the packages (not included in this patch) control, octgpr, and odepkg. One cannot just unconditionally hardcode the lapack library to link to only because the Mingw built of Octave can not handle a (hopefully) correct way to specify it. These lines in the Makefiles regarding the lapack linkage were introduced only recently into these packages after some discussion and some thinking. Olaf -- public key id EAFE0591, e.g. on x-hkp://pool.sks-keyservers.net |
From: Michael G. <mic...@gm...> - 2012-09-16 18:01:03
|
On Sun, Sep 16, 2012 at 1:53 PM, Olaf Till <i7...@t-...> wrote: > I just saw that the same inacceptable change was proposed for the > linear-algebra package and possibly also (?) for the optiminterp > package. The same problem should also exist in the packages (not > included in this patch) control, octgpr, and odepkg. One cannot just > unconditionally hardcode the lapack library to link to only because > the Mingw built of Octave can not handle a (hopefully) correct way to > specify it. These lines in the Makefiles regarding the lapack linkage > were introduced only recently into these packages after some > discussion and some thinking. > To be honest, I don't think the idea was to integrate the changes as-is. There has been complaints that Nitzan patches were not available and that it was a GPL violation. So there they are. Whether you like them or not, or whether they are "integratable" is not really relevant. Michael. |
From: Paul D. <sl...@pa...> - 2012-09-16 18:24:02
|
2012-09-16 08:13, nitnit skrev: > Jordi Gutiérrez Hermoso wrote >> On Fri, Sep 14, 2012 at 3:44 PM, Jordi Gutiérrez Hermoso wrote: >> Nitzan, can you please publish the sources you've used to build MinGW? >> It's a little worrisom that we're in effect distributing GPL-violating >> MinGW binaries. >> > Attached are the patches I have used for octaveforge packages in order to > build them on mingw. Be aware that most of them are simply workarounds to > overcome mingw environment failures to identify libs. I hope that I will be > able to fix some of these on next mingw octave build. > > Nitzan > > > ************************************************************************** > sockets-1.0.8 > ************************************************************************** > > --- sockets-1.0.8.tar.gz\sockets\src\Makefile Tue Jan 10 21:05:12 2012 > +++ sockets-1.0.8_patched.tar.gz\sockets\src\Makefile Sat Aug 04 11:35:39 > 2012 > @@ -14,7 +14,8 @@ > all: $(OCT) > > %.oct: %.cc > - mkoctfile $(VFLAGS) -s $< > + mkoctfile -L/C/Octave/Octave3.6.0_gcc4.6.2/mingw32/lib $(VFLAGS) -s > -lws2_32 $< > +# mkoctfile $(VFLAGS) -s $< > > test: $(OCT) > test_octave_sockets > Considering the above change for the sockets package, is there some way to detect that one runs in mingw, so it is possible to use the same octfile on multiple platforms? something like (in pseudo code) if $(lsb_config ???) == mingw moreflags= -L/c/..../ end The less patches needed, the better. paul |
From: Michael G. <mic...@gm...> - 2012-09-16 18:55:11
|
On Sun, Sep 16, 2012 at 1:57 PM, Paul Dreik <sl...@pa...> wrote: > > > ************************************************************************** > > sockets-1.0.8 > > > ************************************************************************** > > > > --- sockets-1.0.8.tar.gz\sockets\src\Makefile Tue Jan 10 21:05:12 2012 > > +++ sockets-1.0.8_patched.tar.gz\sockets\src\Makefile Sat Aug 04 11:35:39 > > 2012 > > @@ -14,7 +14,8 @@ > > all: $(OCT) > > > > %.oct: %.cc > > - mkoctfile $(VFLAGS) -s $< > > + mkoctfile -L/C/Octave/Octave3.6.0_gcc4.6.2/mingw32/lib $(VFLAGS) -s > > -lws2_32 $< > > +# mkoctfile $(VFLAGS) -s $< > > > > test: $(OCT) > > test_octave_sockets > > > Considering the above change for the sockets package, > is there some way to detect that one runs in mingw, so it is possible to > use the same octfile on multiple platforms? > That's a job for the configure script. Michael. |