logo
Tags down

shadow

How to compile C ++ code from Windows for Linux (Dev-Cpp)


By : Venkatesh
Date : July 31 2020, 12:00 PM
Does that help You can install Windows Subsystem for Linux, or set up a VM and do it that way.
Or as @user4581301 mentioned, use a cross-compiler.
code :


Share : facebook icon twitter icon

How to compile a C++ source code written for Linux/Unix on Windows Vista (code given)


By : user1912806
Date : March 29 2020, 07:55 AM
hop of those help? Here we go, you've just got good compiler. mingw32-gcc compiler (which is DevCpp built-in compiler) just giving some error like this
code :
error: dependent-name ` T::int' is parsed as a non-type, but instantiation yields a type
/*
 PrefixSpan: An efficient algorithm for sequential pattern mining

 $Id: prefixspan.cpp,v 1.8 2002/04/03 13:35:23 taku-ku Exp $;

 Copyright (C) 2002 Taku Kudo   All rights reserved.
 This is free software with ABSOLUTELY NO WARRANTY.

 This program is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation; either version 2 of the License, or
 (at your option) any later version.

 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.   See the
 GNU General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
 02111-1307, USA
*/

#include <iostream>
#include <map>
#include <vector>
#include <string>
#include <string.h>
#include <strstream>
#include <unistd.h>
#include <stdlib.h>

using namespace std;

template <class T> class PrefixSpan {
private:
    vector < vector <T> >            transaction;
    vector < pair <T, unsigned int> > pattern;
    unsigned int minsup;
    unsigned int minpat;
    unsigned int maxpat;
    bool all;
    bool where;
    string delimiter;
    bool verbose;
    ostream *os;

void report (vector <pair <unsigned int, int> > &projected){
    if (minpat > pattern.size()) return;

    // print where & pattern
    if (where) {
        *os << "<pattern>" << endl;

        // what:
        if (all) {
            *os << "<freq>" << pattern[pattern.size()-1].second << "</freq>" << endl;
            *os << "<what>";
            for (unsigned int i = 0; i < pattern.size(); i++)
                *os << (i ? " " : "") << pattern[i].first;
            } else {
                *os << "<what>";
                 for (unsigned int i = 0; i < pattern.size(); i++)
                    *os << (i ? " " : "") << pattern[i].first << delimiter << pattern[i].second;
            }
            *os << "</what>" << endl;

        // where
        *os << "<where>";
        for (unsigned int i = 0; i < projected.size(); i++)
            *os << (i ? " " : "") << projected[i].first;
        *os << "</where>" << endl;
        *os << "</pattern>" << endl;
    } else {
        // print found pattern only
        if (all) {
             *os << pattern[pattern.size()-1].second;
             for (unsigned int i = 0; i < pattern.size(); i++)
                *os << " " << pattern[i].first;
            } else {
                 for (unsigned int i = 0; i < pattern.size(); i++)
                    *os << (i ? " " : "") << pattern[i].first << delimiter << pattern[i].second;
            }

        *os << endl;
    }
}

void project (vector <pair <unsigned int, int> > &projected){
    if (all) report(projected);

    map <T, vector <pair <unsigned int, int> > > counter;

    for (unsigned int i = 0; i < projected.size(); i++) {
        int pos = projected[i].second;
        unsigned int id = projected[i].first;
        unsigned int size = transaction[id].size();
        map <T, int> tmp;
        for (unsigned int j = pos + 1; j < size; j++) {
            T item = transaction[id][j];
            if (tmp.find (item) == tmp.end()) tmp[item] = j ;
        }

        for (typename map <T, int>::iterator k = tmp.begin(); k != tmp.end(); ++k)
            counter[k->first].push_back (make_pair <unsigned int, int> (id, k->second));
    }

    for (typename map <T, vector <pair <unsigned int, int> > >::iterator l = counter.begin ();
    l != counter.end (); ) {
        if (l->second.size() < minsup) {
            typename map <T, vector <pair <unsigned int, int> > >::iterator tmp = l;
            tmp = l;
            ++tmp;
            counter.erase (l);
            l = tmp;
        } else {
            ++l;
        }
    }

    if (! all && counter.size () == 0) {
        report (projected);
        return;
    }

    for (typename map <T, vector <pair <unsigned int, int> > >::iterator l = counter.begin ();
    l != counter.end(); ++l) {
        if (pattern.size () < maxpat) {
             pattern.push_back (make_pair <T, unsigned int> (l->first, l->second.size()));
             project (l->second);
             pattern.erase (pattern.end());
        }
    }
}

public:
    PrefixSpan (unsigned int _minsup = 1,
            unsigned int _minpat = 1,
            unsigned int _maxpat = 0xffffffff,
            bool _all = false,
            bool _where = false,
            string _delimiter = "/",
            bool _verbose = false):
    minsup(_minsup), minpat (_minpat), maxpat (_maxpat), all(_all),
    where(_where), delimiter (_delimiter),  verbose (_verbose) {};

    ~PrefixSpan () {};

    istream& read (istream &is){
        string line;
        vector <T> tmp;
        T item;
        while (getline (is, line)) {
            tmp.clear ();
            istrstream istrs ((char *)line.c_str());
            while (istrs >> item) tmp.push_back (item);
            transaction.push_back (tmp);
        }

        return is;
    }

    ostream& run (ostream &_os){
        os = &_os;
        if (verbose) *os << transaction.size() << endl;
        vector <pair <unsigned int, int> > root;
        for (unsigned int i = 0; i < transaction.size(); i++)
            root.push_back (make_pair (i, -1));
         project (root);
        return *os;
    }

    void clear (){
        transaction.clear ();
        pattern.clear ();
    }
};

int main (int argc, char **argv){
    extern char *optarg;
    unsigned int minsup = 1;
    unsigned int minpat = 1;
    unsigned int maxpat = 0xffffffff;
    bool all = false;
    bool where = false;
    string delimiter = "/";
    bool verbose = false;
    string type = "string";

    int opt;
    while ((opt = getopt(argc, argv, "awvt:M:m:L:d:")) != -1){
        switch(opt) {
        case 'a':
            all = true;
            break;
        case 'w':
            where = true;
            break;
        case 'v':
            verbose = true;
            break;
        case 'm':
            minsup = atoi (optarg);
            break;
        case 'M':
            minpat = atoi (optarg);
            break;
        case 'L':
            maxpat = atoi (optarg);
            break;
        case 't':
            type = string (optarg);
            break;
        case 'd':
            delimiter = string (optarg);
            break;
        default:
            cout << "Usage: " << argv[0]
            << " [-m minsup] [-M minpat] [-L maxpat] [-a] [-w] [-v] [-t type] [-d delimiter] < data .." << endl;
            return -1;
        }
    }

    if (type == "int") {
         PrefixSpan<unsigned int> prefixspan (minsup, minpat, maxpat, all, where, delimiter, verbose);
         prefixspan.read (cin);
         prefixspan.run (cout);
    }else if (type == "short") {
         PrefixSpan<unsigned short> prefixspan (minsup, minpat, maxpat, all, where, delimiter, verbose);
         prefixspan.read (cin);
         prefixspan.run (cout);
    } else if (type == "char") {
         PrefixSpan<unsigned char> prefixspan (minsup, minpat, maxpat, all, where, delimiter, verbose);
         prefixspan.read (cin);
         prefixspan.run (cout);
    } else if (type == "string") {
         PrefixSpan<string> prefixspan (minsup, minpat, maxpat, all, where, delimiter, verbose);
         prefixspan.read (cin);
         prefixspan.run (cout);
    } else {
        cerr << "Unknown Item Type: " << type << " : choose from [string|int|short|char]" << endl;
        return -1;
    }

    return 0;
}

Can i compile any c code writen for linux, on windows?


By : user3478396
Date : March 29 2020, 07:55 AM
hop of those help?
see if i have made one c program in c on linux machine now if i want to compile that program on other os or lets say on windows how can i do that.?

Compile C++ code under windows for linux, as ready to run


By : Ralph
Date : March 29 2020, 07:55 AM
Any of those help Assuming you want to be able to compile something on Windows and have it work on any Linux machine, that's simply not possible. Debian and Ubuntu both support many architectures, many of which have absolutely no binary compatibility. If you know what type of hardware your friend has you can build a binary targeted to that architecture.
If you want a quick and dirty answer, you can build for i386 since a 64bit machine can probably still run it fine (not guaranteed though).

How to compile C code in Linux to run on Windows?


By : Raphaeldcosta08
Date : March 29 2020, 07:55 AM
help you fix your problem You would need a cross-compiler to create a Windows executable in Linux.
Mingw-w64 is an advancement of the original mingw.org project, created to support the GCC compiler on Windows systems.
code :
sudo apt-get install mingw-w64
i686-w64-mingw32-gcc -o test.exe test.c
x86_64-w64-mingw32-gcc -o test.exe test.c

Can one compile Windows code on Linux?


By : Ahmd Aleame
Date : March 29 2020, 07:55 AM
this one helps. Using VC++ directly on Linux is not possible. To let the Linux server do the compiling with VC++ anyway you could either use wine which apparently works with older Versions (see https://appdb.winehq.org/objectManager.php?sClass=application&iId=5766 ) but propably is not easy to set up in a CLI envrioment and might cause License Issues with Microsoft, or use Windows Virtual Machines, which tend to have some Performance drawback.
The best Solution would be to use GCC (g++), which works on a wide range of architectures and operating systems and supports cross compiling.
Related Posts Related Posts :
  • Compiling standard library types
  • Sending argument to an .exe via SHELLEXECUTEINFO
  • Why I can't use i/10 in FOR LOOP, C++?
  • How to use PERF_SAMPLE_READ with mmap
  • Is there any way to iterate through a struct?
  • My character counting code is miscounting characters. Why?
  • Difference between std::resize(n) and std::shrink_to_fit in C++?
  • Wildcard for C++ concepts saying "accepting anything for this template argument"
  • Which of the objects of the class A would be created first in this code snippet?
  • Floating point math accuracy, c++ vs fortran
  • C++ initialize objects with packed array of integers
  • Picking a constructor to call
  • using function call in constructor gives different result c++
  • Using strcpy to copy elements of an char array to another array
  • Templated Constructor Specialization
  • Struggling to convert an integer into a linked list. Not sure what I'm doing wrong here
  • C++: Is it better to store a console output in a macro?
  • C++ - Exception in Constructor
  • AVX: matrix dot vector, but ignore diagonal
  • Pointer To Pointer passed by reference
  • Why is this operator< overload function invisible to STL algorithms?
  • What is the correct algorithm to perform double-float division?
  • In the case of using a std::unique_ptr to automatically deallocate memory upon exiting a scoped block, why not just use
  • C++: Iterating over a string vector and using the index for putenv
  • OpenCL Matrix Multiplication Using std::vector
  • template template parameter deduction: three different compilers three different behaviors
  • C++ pull a card from deck
  • File reading with and without new line
  • store strings in stable memory in c++
  • Why is static_cast used in QT's official document
  • iterator .end() from std::list returns "0xcdcdcdcdcdcdcdcd" but .begin() as expected
  • Is std::sqrt the same as sqrt in C++
  • Iterate through std::initializer_list
  • Codeblocks c++ code doesn't run in VS 19 (vector subscript out of range)
  • Why erase on std::vector promote iterator
  • how to destroy an object in C++
  • How to create Visual Studio 2015 solution from CMake
  • Using concepts for checking if a type T has a field F
  • constructor giving error: no matching function for call to
  • search top n% of a vector member C++
  • Is this reinterpret_cast problematic in principle, and/or in practice?
  • What is the following error doing? I do not see any error with the bounds
  • Two index's of an array have same memory adress
  • how do i avoid integer division in c++?
  • Setting value to enum
  • Properties of a pointer to a zero length array
  • Why the output is different how ever the formula is the same?
  • Restarting from the beginning using do while loops
  • Error: invalid initialization of reference of type
  • how to avoid to use memcpy to create a string
  • Copying the vector elements into std::array
  • Is there any class pointers in Perl in order to access member variables and functions?
  • Why the static variable is not set to 1000
  • Why can't a destructor have reference qualifiers?
  • How to print binary tree in horizontal way?
  • Comparison behavior of ' <' operator
  • Constructors in C++ Language
  • Why displayed value of b , c and y is different from my trace?
  • Undefined reference to `fftw_init_threads' while installing pHash library
  • Reading remapped hdd sectors
  • shadow
    Privacy Policy - Terms - Contact Us © voile276.org